查找以逗号分隔的列中的所有唯一值

Kan*_*oet 4 r strsplit

我通过不同的观察者/观察者组对一个物种进行了多次观察,并希望创建所有独特观察者的列表。我的数据如下所示:

data <- read.table(text="species observer
1 A,B
1 A,B
1 B,E
1 B,E
1 D,E,A,C,C
1 F"               , header = TRUE, stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)

我的输出应该返回所有唯一观察者的列表 - 所以:

A,B,C,E,F
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下命令对 C 列中的数据进行子串化,但这仅返回观察者的唯一组合。

all_observers <- unique(strsplit(as.character(data$observer), ","))

all_observers
[[1]]
[1] "A" "B"

[[2]]
[1] "B" "E"

[[3]]
[1] "D" "E" "A" "C" "C"

[[4]]
[1] "F"
Run Code Online (Sandbox Code Playgroud)

Gre*_*gor 5

你就快到了,你只需要unlist在执行以下操作之前unique:

all_observers <- unique(unlist(strsplit(as.character(data$observer), ",")))
Run Code Online (Sandbox Code Playgroud)