我有一个列表如下:
yel <- list(c(1,3,5,7,9),
c(1,2,6,9),
c(2,4,5,6,7,8,9))
Run Code Online (Sandbox Code Playgroud)
我想将列表转换为如下所示的数据帧:
1 2 3
1 1 1 0
2 0 1 1
3 1 0 0
4 0 0 1
5 1 0 1
6 0 1 1
7 1 0 1
8 0 0 1
9 1 1 1
Run Code Online (Sandbox Code Playgroud)
要了解我是如何到达该列表的:我有一个包含2列的数据框,即"id"和"text"."text"列是一个字符列表.我在字符列表中找到了唯一的单词,并创建了一个数据框"yel",其中第一个列表代表"id",其中"text"具有"text1",第二个列表代表"id",其中"text2"具有"text2",依此类推.(例如,我的数据集中的"id"是7170325).非常感谢你提前!
tabulate 在这里可能很方便:
setNames(data.frame(lapply(yel, tabulate)), seq_along(yel) )
# 1 2 3
#1 1 1 0
#2 0 1 1
#3 1 0 0
#4 0 0 1
#5 1 0 1
#6 0 1 1
#7 1 0 1
#8 0 0 1
#9 1 1 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
668 次 |
| 最近记录: |