R 如何找到跨多列的唯一值的数量?
当跨多个列时,如何查找唯一值的数量。在我的例子中,我试图获得每个纬度/经度发生的次数 比如说R 如何找到跨多列的唯一值的数量?,r,R,当跨多个列时,如何查找唯一值的数量。在我的例子中,我试图获得每个纬度/经度发生的次数 比如说 +------------+ | Lat Long | +------------+ | 39.3 -76.6 | | 39.3 -76.6 | | 39.3 -76.6 | | 39.9 -76.1 | +------------+ 将输出 +---------------+ | Lat Long Freq | +---------------+ | 39.3 -76.6 3 | | 39.9
+------------+
| Lat Long |
+------------+
| 39.3 -76.6 |
| 39.3 -76.6 |
| 39.3 -76.6 |
| 39.9 -76.1 |
+------------+
将输出
+---------------+
| Lat Long Freq |
+---------------+
| 39.3 -76.6 3 |
| 39.9 -76.1 1 |
+---------------+
一个选项是使用
count
library(dplyr)
count(df1, Lat, Long)
一个选项是使用
count
library(dplyr)
count(df1, Lat, Long)
dplyr::summary()还应该执行以下操作:
df <- df %>%
group_by(Lat,Long) %>%
summarize(Freq = n())
df%
分组依据(横向、纵向)%>%
总结(Freq=n())
dplyr::summary()也应该做到这一点:
df <- df %>%
group_by(Lat,Long) %>%
summarize(Freq = n())
df%
分组依据(横向、纵向)%>%
总结(Freq=n())
基本R解决方案:
Data = data.frame(Lat = c(39.3, 39.3, 39.3, 39.9),
Long = c(-76.6, -76.6, -76.6, -76.1))
aggregate(rep(1, nrow(Data)), Data, sum)
Lat Long x
1 39.3 -76.6 3
2 39.9 -76.1 1
基本R解决方案:
Data = data.frame(Lat = c(39.3, 39.3, 39.3, 39.9),
Long = c(-76.6, -76.6, -76.6, -76.1))
aggregate(rep(1, nrow(Data)), Data, sum)
Lat Long x
1 39.3 -76.6 3
2 39.9 -76.1 1
你的标题是跨越多行,但你的问题是列。另外,你说的是唯一值的数量,但你不是在试图计算相反的数量,即一个值被重复的次数吗?你的标题是跨越多行,但你的问题是列。另外,你说的是唯一值的数量,但你不是在试图计算相反的数值,即一个值被重复的次数吗?所有这些答案都起到了作用。这些答案都可以被接受。所有这些答案都起到了作用。它们都可以被接受。