问题标签 [r-haven]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 如何在 R 中处理来自 SPSS 的标记数据
这是我发现在 R 中处理来自 SPSS 的标记数据的解决方案。
我正在处理 SPSS 中提供的一项调查,我foreign
从haven
.
在使用 Haven 导入 Stata 数据后,我阅读了访问变量标签的便捷方式,但我找不到将标记变量表示为因子的方法。
我尝试的是提取attributes
usingpurrr
包,然后将一些变量转换为因子。没有成功!
如何在 R 中处理来自 SPSS 的标记数据
1:读取数据
2:创建一个表格以获得数字(标签)的含义:
那返回
哪个是变量标签,那我试试
有用 !
r - 评估错误:必须命名第 1 列
从 R 中的 sas 数据读取列时出现以下错误
这会产生错误
当我阅读另一篇专栏时,这不会发生。有什么我在这里遗漏的吗?如何解决这个问题?
r - 为带有避风港的 SPSS 导出变量标签
我想导出一个我正在处理的数据集,R
供我的同事在SPSS
. 当我导出数据集时,我想包含变量标签(即下面的列),我不是在询问描述变量级别的值标签:
是否有haven
允许我设置此变量标签的选项?
我搜索了文档,发现只有设置值标签的功能。我注意到这是一个似乎支持变量标签haven
的包装器。ReadStat
在ReadStat
文档Citizenship of respondent
中,可以在下面的块中看到变量标签 ( ):
不幸的是,我对的理解C++
不够复杂,无法理解幕后haven
的工作原理,因此非常欢迎提出任何建议。
我找到了一种解决方法,它涉及通过使用属性手动设置变量标签。考虑下面的示例,使用来自UK Data Service的教学数据集:
因此,我可以使用以下方法更改变量标签:
其中,当我写入一个新.sav
文件时,它确实按SPSS
. 我的问题是,是否有本地方法可以做到这一点haven
?
r - 使用 Haven::write_sav() 放大 .sav 文件大小
我正在使用包 Haven 从 R 编写 SPSS .sav 文件,这对我来说总体上非常有效。但是我注意到使用 write_sav() 写入磁盘的 .sav 文件大小似乎比必要的要大得多。每当我在 SPSS 中打开并保存由 write_sav() 写入的 .sav 文件时,文件大小最多会减少 10 倍!
这对我来说很重要,因为我正在为其他人向 SPSS 写入相当大的数据,有时 SPSS 拒绝打开一个非常大的文件。如果 write_sav() 以“真正的”本机 SPSS 方式更有效地存储,也许不会出现这个问题?
有谁知道这个问题,也许有一个有用的评论?需要安装 SPSS 才能复制此问题
r - 处理数据时保留 SPSS 值标签
我正在分析 PISA 2015 中的学生水平数据。数据可在此处以 SPSS 格式获得
我可以使用 Haven 包中的 read_sav 函数将数据加载到 R 中。我需要能够编辑 R 中的数据,然后以 SPSS 格式保存/导出数据,其中包含在 SPSS 下载中的原始值标签完好无损。我使用的代码是:
当我的同事(在 SPSS 中工作)尝试打开“testdata1.sav”时,值标签丢失。我已经阅读了 Haven 文档,但似乎找不到解决方案。我也在外部包中尝试了 read/write.spss,但在数据集中加载时出现问题。
我正在使用 R 版本 3.4.0 和最新版本的 Haven。
有谁知道是否有解决方案?我会非常感谢你的帮助。如果您需要任何其他信息来回答这个问题,请告诉我。
r - 尝试将数据帧写入 R 中的 sas7bdat 文件时出错
我正在处理一个data.frame
我R
想导出(写入)为 sas7bdat 文件的文件。我正在使用的包是haven
当我使用命令行时:
我收到以下错误:
r - 在 ggplot2 图中自动使用标签(避风港语义)
我正在绘制使用避风港语义标记的数据,即变量和值具有通过属性定义的标签。
通常,这些标签也是我在轴标题和刻度中想要的。
我可以编写一个助手,用更容易迭代的东西替换那个费力的 scale_x_continuous 语句吗?例如类似的东西
scale_x_continuous(label_from_attr, breaks = breaks_from_attr, labels = value_labels_from_attr)
。或者甚至+ add_labels_from_attributes()
可以替换整个东西?
我知道我可以编写/使用助手Hmisc::label
来稍微缩短上面的属性代码,但这不是我想要的。
r - 更改 R 中的内部因子水平(对避风港很重要 - write_dta())
该haven
包提供了一个非常有用的函数,用于使用 write_dta() 函数将数据框/Tibble 导出到 Stata。
当 R 因子写入 Stata 时(使用 write_dta() 函数),内部 R 因子级别变为以 Stata 长格式保存的数值,级别被写入变量标签。(这些内部 R 因子水平与应用于as.numeric(factor)
因子相同。)
我想明确设置 R 的内部因子级别,以便在 Stata 中获得所需的 numlabels 值。
为了显示:
但是,我想根据高度具体的模式设置 R 的内部因子水平。例如,我想要内部级别:
蓝色 = 2 棕色 = 1 绿色 = 6 不公开 = -1
因为这与问卷上的编码相匹配。
我尝试使用forcats
包中的 lvls_recode。该函数如下所示:
但正如您在此处看到的,我需要指定的新 idx 不能,因为只采用序列号。
看了stats::relevel()
也没有解决问题。
r - 为什么在缩放所有列时 preProcess 会忽略某些列?
我有一个数据集 - 任何地方都没有缺失值。我使用包'haven'将它读入R - 文件本身是一个SPSS文件“.sav” - 所以我使用了“read_sav”。
我想使用插入符号的预处理标准化所有数字列。重要提示:这是我的一些专栏的结构:
其他一些列的结构如下:
现在,我尝试缩放数据集中的所有变量:
当我检查结果时,我发现只有结构只是“num”的列才被缩放。所有标记的列保持不变。
我很惊讶 - 是否有某种不成文的规则只处理未标记的列?或者插入符号和避风港之间是否存在冲突?
r - 从 github 加载 SPSS 文件
我不明白如何导入托管在 github 上的 SPSS 文件(或 .rdata 或 Stata)文件。我在这里有一个包含一些数据文件的存储库,但是在其中使用 sav 文件的 URL 不起作用。