我想基于两列纬度和经度在R中创建唯一ID,以便重复的位置具有相同的群集ID.
例如:
LAT LONG Cluster_ID
13.5330 -15.4180 1
13.5330 -15.4180 1
13.5330 -15.4180 1
13.5330 -15.4180 1
13.5330 -15.4170 2
13.5330 -15.4170 2
13.5330 -15.4170 2
13.5340 -14.9350 3
13.5340 -14.9350 3
13.5340 -15.9170 4
13.3670 -14.6190 5
Run Code Online (Sandbox Code Playgroud) 我有一项调查,其中必须为问题分配唯一的ID.有些问题多次出现.这意味着还有一层额外的问题.在下面的示例数据中,仅包括第一层.
问题:如何按出现顺序分配唯一索引?此处提供的解决方案按字母顺序排列 我可以订购这些因素,但这会破坏在R中实现它的目的[有很多问题需要排序].
library(data.table)
dt = data.table(question = c("C", "C", "A", "B", "B", "D"),
value = c(10,20,30,40,20,30))
dt[, idx := as.numeric(as.factor(question))]
Run Code Online (Sandbox Code Playgroud)
得到:
question value idx
# 1: C 10 3
# 2: C 20 3
# 3: A 30 1
# 4: B 40 2
# 5: B 20 2
# 6: D 30 4
# but required is:
dt[, idx.required := c(1, 1, 2, 3, 3, 4)]
Run Code Online (Sandbox Code Playgroud)
当我有两个(或更多)数据帧时,我有一个实际问题,并希望为每个数据集中的每个匹配观察分配唯一的ID,例如:
#1. Create dataframe df1:
a1 <- c(1, 1, 1, 1, 2, 2, 2, 2, 1, 1)
b1 <- c(1, 5, 3, 2, 3, 4, 5, 1, 5, 2)
c1 <- c("white", "red", "black", "white", "red",
"white", "black", "silver", "red", "green")
df1 <- data.frame(a1, b1, c1)
df1
a1 b1 c1
1 1 1 white
2 1 5 red
3 1 3 black
4 1 2 white
5 2 3 red
6 2 4 white
7 2 5 black
8 2 …
Run Code Online (Sandbox Code Playgroud) 我在 R 中有以下数据框
ID Date
1 01-01-2018
2 02-01-2018
3 03-01-2018
4 03-01-2018
5 03-01-2018
6 04-01-2018
7 04-01-2018
Run Code Online (Sandbox Code Playgroud)
我想要的数据框是
ID Date Rank
1 01-01-2018 1
2 02-01-2018 2
3 03-01-2018 3
4 03-01-2018 3
5 03-01-2018 3
6 04-01-2018 4
7 04-01-2018 4
Run Code Online (Sandbox Code Playgroud)
当遇到唯一日期时,排名应该改变,否则排名应该相同。我如何在 R 中做到这一点?
我有一个数据框像 -
No. Alphabet
1. A
2. B
3. A
4. A
5. C
6. B
7. C
Run Code Online (Sandbox Code Playgroud)
现在,我想添加一个新的列结果,它将为每个唯一元素提供一个新数字.所以决赛桌将是
No. Alphabet Outcome
1. A 1
2. B 2
3. A 1
4. A 1
5. C 3
6. B 2
7. C 3
Run Code Online (Sandbox Code Playgroud)
我如何用R实现这一目标?