【问题标题】:How can I split a data frame containing rows of one string in each into multiple columns? [duplicate]如何将包含一个字符串行的数据框拆分为多列? [复制]
【发布时间】:2020-03-27 02:15:07
【问题描述】:

例如,如果我有多行包含“我爱狗”之类的句子,并且我想在数据框中保持相同的行数,但要保留三列 各个列中的“I”“love”“dogs”等。如何在字符串中的空格处拆分一个原始列?

【问题讨论】:

    标签: r dataframe split


    【解决方案1】:

    我们可以使用strsplit 和do.call。

    data <- "I love dogs"
    do.call(rbind,strsplit(data," "))
    #     [,1] [,2]   [,3]  
    #[1,] "I"  "love" "dogs"
    

    或者对于许多字符串。

    data <- data.frame(love = c("I love dogs","I love cats","I love bears","I love dolphins","I love otters"),stringsAsFactors = FALSE)
    do.call(rbind,strsplit(data$love," "))
    #     [,1] [,2]   [,3]      
    #[1,] "I"  "love" "dogs"    
    #[2,] "I"  "love" "cats"    
    #[3,] "I"  "love" "bears"   
    #[4,] "I"  "love" "dolphins"
    #[5,] "I"  "love" "otters"  
    

    【讨论】:

    • 我可以对包含多行且每行有一个字符串的整个数据框执行此操作吗?
    • 是的。请参阅我编辑的答案。
    猜你喜欢
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    • 2021-10-24
    • 2011-05-20
    相关资源
    最近更新 更多