我有一个(相当长的)矢量列表.这些向量由我使用strsplit()句子函数得到的俄语单词组成.
以下是head()返回的内容:
[[1]]
[1] "?????" "?????????" "??????" "?" "????"
[[2]]
[1] "??" "?????????" "????????" "?" "?????"
[[3]]
[1] "?????" "????????" "??????-?????????" "?" "??????????" "???????"
[[4]]
[1] "?????" "??" "????," "???" "??"
[[5]]
[1] "????????????," "?" "?????????" "??" "?????"
[[6]]
[1] "??????" "??????????" "???."
Run Code Online (Sandbox Code Playgroud)
注意,矢量具有不同的长度.
我想要的是能够阅读每个句子,第二个单词,第三个单词等的第一个单词.
期望的结果将是这样的:
P1 P2 P3 P4 P5 P6
[1] "?????" "?????????" "??????" "?" "????" NA
[2] "??" "?????????" "????????" "?" "?????" NA
[3] "?????" "????????" "??????-?????????" "?" "??????????" "???????"
[4] "?????" "??" …Run Code Online (Sandbox Code Playgroud) 在简单的情况下,将偶数列表转换为数据框可以通过as.data.frame(). 例如 :
> (x1 <- list(a = 1:3, b = 4:6, c = 7:9))
> as.data.frame(x1)
# a b c
# 1 1 4 7
# 2 2 5 8
# 3 3 6 9
Run Code Online (Sandbox Code Playgroud)
但是,如果列表中组件的长度不相等,则as.data.frame()不起作用。
> (x2 <- list(a = 1:4, b = 5:6, c = 7:11, d = 12:14))
# $a
# [1] 1 2 3 4
# $b
# [1] 5 6
# $c
# [1] 7 8 9 10 11
# …Run Code Online (Sandbox Code Playgroud)