【问题标题】:R doesn't recognise header from sav fileR 无法识别来自 sav 文件的标头
【发布时间】:2015-11-13 21:09:40
【问题描述】:

我正在将 sav 文件导入 RStudio。现在我只想选择一个特定的国家(列标题:nation)和一个特定的年份(列标题:year)。使用以下代码:

myfile_nation_year <- subset(myfile, (nation == "Great Britain") & (year == "2012"))

我只收到此错误消息:

 Error in subset.default(sigma_org, (nation == "Great Britain") & (year ==  : 
  object 'nation' not found

当我在查看器中查看我的文件时,标题会显示国家、年份和其他标题。

我也试过了:

myfile_nation_year <- subset(myfile, (myfile$nation == "Great Britain") & (myfile$year == "2012"))

我没有收到错误消息,而是收到一个空列表。我敢打赌这对于有经验的人来说是小菜一碟,但我是 R 新手,不知道我做错了什么。

str(myfile) 
List of 3184 
 $ nation : Factor w/ 20 levels "France","Germany",..: 1 1 1 1 1 1 1 1 1 1 ... 
 $ region : Factor w/ 9 levels "Europe","USA",..: 1 1 1 1 1 1 1 1 1 1 ... 
 $ city_chn : Factor w/ 23 levels "Beijing","Shanghai",..: NA NA NA NA NA NA NA NA NA NA ... 
 $ citych_tiers : Factor w/ 5 levels "Else","Tier 1",..: NA NA NA NA NA NA NA NA NA NA ... 
 $ year : Factor w/ 8 levels "2007","2008",..: 8 8 8 8 8 8 8 8 8 8 ...

【问题讨论】:

  • “nation”这个名字中有空格吗?如“民族”或“民族”。
  • 不,据我所知没有。但如果,我该怎么办?
  • 在国家周围使用反引号(`)有效吗?
  • 只是为了确定,你可以试试str(myfile) 并向我们展示输出吗?
  • @ulfelder 非常感谢!我只需要你答案的前半部分。 (将列表转换为数据框)。它现在正在工作!

标签: r header subset spss


【解决方案1】:

我猜你首先导入了你的 sav 文件并将其保存在对象 myfile 中。

试试:

头(我的文件)

您将看到您的数据如何查看 R 并直接查看列是否正确命名。

如果不是,则表示您错误地使用了子集(),请尝试删除国家和年份周围的 ()。

【讨论】:

  • 感谢您的回答。这可能会帮助我解决未来的其他问题。但是@ulfelder 为我提供了解决方案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-10-18
  • 2018-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-14
  • 1970-01-01
相关资源
最近更新 更多