将data.frame列从列表转换为向量

ModalBro

我有一个使用代码从列表“ y”创建的data.frame

map_dfr(y, ~as.data.frame(t(.x))) 

该格式对我有用,但是数据帧的每一列本身都是一个列表,而不是我希望的矢量。我该怎么做才能弄平每个列表,以便保留数据框的结构,但更改每个列的格式?

编辑:这是其当前格式的一小部分数据。我想要做的是将每个变量都取消列出到向量中,以便采用正常的data.frame格式。

structure(list(member_id = list("A000055", "A000361", "A000367", 
"A000369", "A000210", "B001256", "B000013", "B001279", "B001269", 
"B001282"), name = list("Robert B. Aderholt", "Rodney Alexander", 
"Justin Amash", "Mark Amodei", "Robert E. Andrews", "Michele Bachmann", 
"Spencer Bachus", "Ron Barber", "Lou Barletta", "Andy Barr"), 
party = list("R", "R", "R", "R", "D", "R", "R", "D", "R", 
    "R"), state = list("AL", "LA", "MI", "NV", "NJ", "MN", 
    "AL", "AZ", "PA", "KY"), district = list("4", "5", "3", 
    "2", "1", "6", "6", "2", "11", "6"), cook_pvi = list(
    NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
    NULL), vote_position = list("No", "Yes", "No", "Yes", 
    "Yes", "No", "Yes", "Yes", "Yes", "Yes"), dw_nominate = list(
    0.361, 0.331, 0.649, 0.376, -0.297, 0.584, 0.387, -0.123, 
    0.277, 0.485), bill_num = c("S47", "S47", "S47", "S47", 
"S47", "S47", "S47", "S47", "S47", "S47"), bill_title = c("Violence Against Women Reauthorization Act of 2013", 
"Violence Against Women Reauthorization Act of 2013", "Violence Against Women Reauthorization Act of 2013", 
"Violence Against Women Reauthorization Act of 2013", "Violence Against Women Reauthorization Act of 2013", 
"Violence Against Women Reauthorization Act of 2013", "Violence Against Women Reauthorization Act of 2013", 
"Violence Against Women Reauthorization Act of 2013", "Violence Against Women Reauthorization Act of 2013", 
"Violence Against Women Reauthorization Act of 2013")), row.names = c(NA, 10L), class = "data.frame")
罗纳克·沙

可能这就是您想要的:

y[] <- lapply(y, unlist)

这会将数据转换为普通的data.frame格式。

str(y)
#'data.frame':  10 obs. of  9 variables:
# $ member_id    : chr  "A000055" "A000361" "A000367" "A000369" ...
# $ name         : chr  "Robert B. Aderholt" "Rodney Alexander" "Justin Amash" "Mark Amodei" ...
# $ party        : chr  "R" "R" "R" "R" ...
# $ state        : chr  "AL" "LA" "MI" "NV" ...
# $ district     : chr  "4" "5" "3" "2" ...
# $ vote_position: chr  "No" "Yes" "No" "Yes" ...
# $ dw_nominate  : num  0.361 0.331 0.649 0.376 -0.297 0.584 0.387 -0.123 0.277 0.485
#$ bill_num     : chr  "S47" "S47" "S47" "S47" ...
# $ bill_title   : chr  "Violence Against Women Reauthorization Act of 2013" "Violence Against Women Reauthorization Act of 2013" "Violence Against Women Reauthorization Act of 2013" "Violence Against Women Reauthorization Act of 2013" ...

如果我们有多个长度的列表,我们可以使用unnest并传递一定范围的列。

library(tidyr)
library(dplyr)

z <- y %>% 
       unnest(cols = member_id:district)  %>%
       type.convert(as.is = TRUE) %>%
       arrange(desc(district))

我们可以使用arrange(district)升序对它们进行排序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将data.frame列转换为向量

来自分类Dev

将向量转换为列表

来自分类Dev

如何将data.frame的列转换为数值向量

来自分类Dev

如何将Python列表转换为列向量?

来自分类Dev

如何将Python列表转换为列向量?

来自分类Dev

将命名向量转换为data.frame R

来自分类Dev

将具有各种长度向量的列表转换为R中的data.frame的最简单方法

来自分类Dev

根据数据框的列之一使用R将data.frame转换为字符列表

来自分类Dev

将列表转换为R中具有多个列的data.frame

来自分类Dev

将列表转换为缺少某些列值的data.frame的更快方法

来自分类Dev

如何将矩阵(或列表)转换为data.frame

来自分类Dev

R将列表转换为Data.Frame或Table

来自分类Dev

将列表转换为R中的data.frame

来自分类Dev

R:将列表转换为 data.frame 或矩阵

来自分类Dev

将列表转换为类型安全的向量

来自分类Dev

将R日期列表转换为向量

来自分类Dev

将R日期列表转换为向量

来自分类Dev

将列表转换为类型安全的向量

来自分类Dev

将数值向量转换为间隔列表

来自分类Dev

将一个data.frame列中的逗号分隔数字列表转换为新列中的新列表

来自分类Dev

R将data.frame转换为按列列出

来自分类Dev

将data.frame中的列转换为日期

来自分类Dev

将矩阵转换为三列data.frame

来自分类Dev

R将data.frame转换为按列列出

来自分类Dev

将列表的一列转换为向量的一列

来自分类Dev

R函数将向量转换为列

来自分类Dev

将数据从列向量转换为矩阵

来自分类Dev

Spark:将 DataFrame 列转换为向量

来自分类Dev

将列转换为列表