У меня есть набор данных с двумя столбцами, мне нужно создать третий столбец, содержащий условия для первого и второго столбцов.
set.seed(1)
x1=(sample(1:10, 100,replace=T))
y1=sample(seq(1,10,0.1),100,replace=T)
z=cbind(x1,y1)
unique(as.data.frame(z)$x1)
z%>%as.data.frame()%>%dplyr::filter(x1==3)
table(x1)
1 2 3 4 5 6 7 8 9 10
7 6 11 14 14 5 11 15 11 6
> z%>%as.data.frame()%>%dplyr::filter(x1==3)
x1 y1
1 3 6.9
2 3 9.5
3 3 10.0
4 3 5.6
5 3 4.1
6 3 2.5
7 3 5.3
8 3 9.5
9 3 5.5
10 3 8.9
11 3 1.2
например, когда я фильтрую x == 3, тогда можно увидеть значения y1, мне нужно написать 1 в 11-й строке, остальные будут равны 0. Мне нужно найти минимум в этом столбце. В моем исходном наборе данных 43545 строк, но только 638 уникальных чисел, таких как x1. Таблица x1 показывает, что 1 повторяется 7 раз, но в моем наборе данных некоторые имеют частоту 1, некоторые имеют частоту 100. Я должен использовать case_when, но как я могу проверить каждый y1, чтобы найти наименьшее значение для 1?