【问题标题】:Making a big list of small lists that contain levels in R制作一个包含 R 中级别的小列表的大列表
【发布时间】:2014-05-27 07:38:02
【问题描述】:

我有 3 个因子集,其中包含 5 个句子。现在我想有 1 个列表,其中所有 15 个句子都在下面。我想问题是我不知道我在搜索什么功能。

dataset1_sample <- sample(dataset1$twt_txt, 5)
dataset2_sample <- sample(dataset2$twt_txt, 5)
dataset3_sample <- sample(dataset3$twt_txt, 5)

dataset1_sample
[1] These                                                    
[2] Are                                                                      
[3] My                                  
[4] Test   
[5] Words                       
9741 Levels: ''A lot of text'' That I do not understand why it is all in here. 

class(dataset1_sample) = factor

现在我想要这三个样本的列表。我试过了

listoflists <- list(list(dataset1_sample),list(dataset2_sample))

这部分正确,因为它确实将它们添加到一个名称下。它只是不会把它们放在一起。

test <- cbind(dataset1_sample, dataset2_sample)

这给了我原始数据集中句子位置的数量。我想我可以使用它们在新列表中再次选择它们,但我认为应该有更简单的方法。

【问题讨论】:

  • 能否提供reproducible example。你真的想要factors吗?
  • 我正在尝试。问题是原始数据集非常大,我不知道如何创建一个包含级别的小样本集。不,我想我不想要因素。
  • 尝试在您的导入函数中使用stringsAsFactors=FALSEread.tableread.csv 或其他)。如果没有可重复的示例,我们很难提供帮助。
  • 我正在使用 readOGR 并且我使用了 stringsAsFactors=FALSE,现在我的样本集属于“字符”类。现在我可以使用 c(dataset1_sample, dataset2_sample, dataset3_sample) 给我正确的结果。谢谢sgibb!我不知道我必须更改数据类型才能得到您对我帮助很大的答案!在这里回答它,我会给你功劳,否则我无法结束这个问题。

标签: r list join merge rbind


【解决方案1】:

您拥有factors 并希望将其作为characters 使用/对待。 要摆脱factor(及其相应级别),您可以将大多数导入函数read.csv/read.table等的stringAsFactors参数设置为TRUE,例如:

df <- read.csv("file.csv", stringsAsFactors=TRUE)

【讨论】:

    猜你喜欢
    • 2021-06-04
    • 2013-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 2017-12-07
    • 1970-01-01
    相关资源
    最近更新 更多