Назначение цветов для наборов данных - PullRequest
1 голос
/ 02 апреля 2020

У меня есть следующий код, который генерирует случайный набор данных с графиком следующего:

x1=abs(rnorm(200))
x2=abs(rnorm(200))-7*x1^2
plot(x1,x2)

enter image description here

Моя цель - разделить данные таким образом, чтобы первые 100 точек были голубыми, а оставшиеся 100 точек были красными в data.frame. Итак, у меня есть два быстрых вопроса: 1) Как разделить данные так, чтобы я двигался вдоль х1, первые 100 точек синего цвета, а остальные красного? Я добавил изображение ниже для пояснения, обратите внимание на мой талант artisti c с помощью инструмента. enter image description here 2) Если после назначения цветов достаточно простого z = data.frame (x1, x2, colors), чтобы поместить данные в набор данных, чтобы я мог запустить данные, используя некоторые базовые c инструменты машинного обучения, такие как SVM, Bagging и Boosting?

Приветствия за помощь.

1 Ответ

1 голос
/ 02 апреля 2020
set.seed(42)
dat <- data.frame(x1 = abs(rnorm(200)))
dat$x2 <- abs(rnorm(200)) - 7*dat$x1^2
dat$col <- ifelse(rank(dat$x1) <= 100, "blue", "red")
plot(x2 ~ x1, data = dat, col = col)
# also: plot(dat$x1, dat$x2, col = dat$col)

sample plot

«Первые 100» являются субъективными в зависимости от ваших потребностей и контекста данных. Можно также пожелать евклидово расстояние от происхождения (пифагорейское), манхэттенское расстояние или какое-либо другое оценивание. Или x1 <= mean(x1) или x1 <= median(x1). Много способов, это только один способ, где мы используем ifelse для дифференциации / присвоения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...