相关疑难解决方法(0)

如何将包含不同长度矢量的列表转换为R中的可用数据帧?

我有一个(相当长的)矢量列表.这些向量由我使用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)

r vector dataframe

46
推荐指数
5
解决办法
3万
查看次数

组合不同长度的(cbind)向量

我有几个长度不等的向量,我想要cbind他们.我把矢量放到一个列表中,我试图结合使用do.call(cbind, ...):

nm <- list(1:8, 3:8, 1:5)
do.call(cbind, nm)

#      [,1] [,2] [,3]
# [1,]    1    3    1
# [2,]    2    4    2
# [3,]    3    5    3
# [4,]    4    6    4
# [5,]    5    7    5
# [6,]    6    8    1
# [7,]    7    3    2
# [8,]    8    4    3
# Warning message:
#   In (function (..., deparse.level = 1)  :
#         number of rows of result is not a multiple of vector …
Run Code Online (Sandbox Code Playgroud)

merge r list matrix

30
推荐指数
2
解决办法
4万
查看次数

将不同长度的命名向量列表转换为 tibble

我有以下清单

\n
example <- list(a = c(1, 2, 3),\n                b = c(2, 3),\n                c = c(3, 4, 5, 6))\n
Run Code Online (Sandbox Code Playgroud)\n

我想将其转换为以下小标题

\n
# A tibble: 9 \xc3\x97 2\n  name  value\n  <chr> <dbl>\n1 a         1\n2 a         2\n3 a         3\n4 b         2\n5 b         3\n6 c         3\n7 c         4\n8 c         5\n9 c         6\n
Run Code Online (Sandbox Code Playgroud)\n

我发现了有关此主题的多个 StackOverflow 问题,例如此处此处此处,但没有一个问题涉及向量名称不会成为列名称的特殊情况。

\n

我设法通过如下所示的良好旧循环实现了预期的结果,但我正在寻找一种更快、更优雅的方法。

\n
library(dplyr)\n\nexample_list <- list(a = c(1, 2, 3),\n                     b = c(2, 3),\n                     c = c(3, 4, 5, 6))\n\nexample_tibble …
Run Code Online (Sandbox Code Playgroud)

r

1
推荐指数
1
解决办法
334
查看次数

标签 统计

r ×3

dataframe ×1

list ×1

matrix ×1

merge ×1

vector ×1