将 R 文件转换为缺少字符串值的 Stata

2023-11-27

我在将 R 文件转换为 Stata 格式时遇到错误。我能够将数字转换为 Stata 文件,但当我包含字符串时,出现以下错误:

library(foreign)
write.dta(newdata, "X.dta")

Error in write.dta(newdata, "X.dta") : 
  empty string is not valid in Stata's documented format

我有一些字符串,如位置、名称等,其中缺少值,这可能会导致此问题。有办法处理这个问题吗? 。


我以前多次遇到过这个错误,而且很容易重现:

library(foreign)
test <- data.frame(a = "", b = 1, stringsAsFactors = FALSE)
write.dta(test, 'example.dta')

一种解决方案是使用因子变量而不是字符变量,例如,

for (colname in names(test)) {
  if (is.character(test[[colname]])) {
    test[[colname]] <- as.factor(test[[colname]])
  }
}

另一种方法是将空字符串更改为其他内容,然后在 Stata 中将其更改回来。

这纯粹是一个问题write.dta,因为 Stata 对于空字符串完全没问题。但是由于foreign被冻结了,对此您无能为力。

Update:(2015-12-04) 更好的解决方案是使用write_dta in the haven包裹:

library(haven)
test <- data.frame(a = "", b = 1, stringsAsFactors = FALSE)
write_dta(test, 'example.dta')

这样,Stata 就可以将字符串变量正确地读取为字符串。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 R 文件转换为缺少字符串值的 Stata 的相关文章

  • 旋转 Markdown 的表格 pdf 输出

    我想将 pdf 上的表格输出旋转 90 度 我正在使用 Markdown 生成报告并kable循环显示表格 如果可以的话我想继续使用kable因为还有很多其他依赖于它的东西我没有包含在这个 MWE 中 这是一个简单的例子 使用iris数据集
  • 在 Rcpp 中使用其他包中的 C 函数

    我试图从 C 函数中的 cubature 包调用 C 例程来执行多维积分 我试图重现的基本 R 示例是 library cubature integrand lt function x sin x adaptIntegrate integr
  • ggplot2:如何标记事件发生的日期

    我想从第二个情节中获取第一个情节的信息 第二张图表示事件发生的天数 它看起来更宽 因为它没有图例 但它是相同的时间尺度 我选择在第一个图中手动分配颜色 I would like to overlay the second plot dots
  • R“错误:“}”中出现意外的“}”[重复]

    这个问题在这里已经有答案了 我有一个字符串变量 对于缺少数据的情况 它具有 空值 我想将 空值 重新编码为缺失 而不是说 空值 我正在尝试编写一个循环来删除这些 空值 条目 但我不断收到错误 错误 中出现意外的 for row in dat
  • python 相当于 R 中的 get() (= 使用字符串检索符号的值)

    在 R 中 get s 函数检索名称存储在字符变量 向量 中的符号的值s e g X lt 10 r lt XVI s lt substr r 1 1 X get s 10 取罗马数字的第一个符号r并将其转换为其等效整数 尽管花了一些时间翻
  • 如何在将两根柱子保持在一起的同时熔化柱子?

    我有这种宽格式的数据 我想将其转换为长格式 Cond Construct Line Plant Tube shoot weight shoot Tube root weight root 1 Standard NA NA 2 199 95
  • 使用 template.docx 从 Shiny App 编织 Word 文档

    我正在尝试使用 template docx 文件从闪亮的应用程序编写一个 Word 文档 我收到以下错误消息 pandoc exe template docx openBinaryFile 不存在 没有这样的文件或目录 以下 3 个文件当前
  • 在 Shiny 中的用户会话之间共享反应数据集

    我有一个相当大的反应数据集 该数据集是通过轮询文件然后按预定义的时间间隔读取该文件而派生的 数据更新频繁 需要不断重新加载 诚然 重新加载可以增量完成并附加到 R 中的现有对象 但事实并非如此 然而目前 尽管会话中的数据相同 但此操作是针对
  • 从 csv 文件中读取奇数行

    这看起来相当简单 我只需要从 R 中的数据文件中读取奇数行并创建一个新的数据框 我怎样才能实现这个目标 read csv filename csv c TRUE FALSE 怎么运行的 功能read csv用于读取整个文件并返回包含所有行的
  • 显示特定颜色

    我正在研究颜色分类 我正在用特定颜色初始化一个矩阵 以便可以获得红色 蓝色或绿色的 16x16 矩阵 代码如下 library rgl color1 lt function n lt 3 m lt 16 a lt list numeric
  • 删除字符串中的转义符,或者“我怎样才能让 \ 不碍事?”

    转义字符在 R 中会带来很多麻烦 前面的问题证明了这一点 更改列中的值 https stackoverflow com questions 10046357 change the values in a column 10046412 10
  • 将逗号类分配给数据框中的多个列

    我有一个data frame有几个数字列我要 就像分配 逗号 类一样 这是需要的 因为我有一个中央数据框 我使用 Openxlsx 包过滤并保存到 Excel 并且需要comma类 以便数据在excel中显示为逗号格式 这是数据框 set
  • 以给定的纵横比保存绘图

    我正在使用非常棒的库 ggplot2 我想出了如何使用设置绘图的纵横比coord fixed 现在 我想将绘图保存为具有指定宽度 例如 10 厘米 的 PDF 并计算所需的高度 我不知道如何实现这一目标 这可能吗 您可以使用网格函数来计算
  • rvest如何通过id选择特定的css节点

    我正在尝试使用 rvest 包从网页中抓取数据 简单来说 html 代码如下所示 div class style div
  • Rstudio 中的 Sweave — pdf 中没有显示任何图

    这里是 Sweave Latex 新手 我在生成常规函数输出时没有问题 但绘图没有显示 这是一个基本示例 documentclass article begin document SweaveOpts concordance TRUE lt
  • R:大向量的高效迭代子集和过滤

    我想更快地执行以下操作 Logic 我有一个向量big共 4 个元素1 2 3 4 我还有一个相同长度的阈值向量1 1 3 1 4 1 5 1 我希望每个元素找到第一个元素的索引next元素高于相应的阈值 在这种情况下 我的预期输出是 2
  • dplyr / left_join 中的嵌套管链

    在尝试获取分组滞后变量的过程中 仅使用这是不可能的 lag 建议的解决方案是将数据拉出 滞后不同的行 然后重新加入它 我更喜欢在不创建中间对象的情况下执行此操作 并且希望在链中间执行此操作 然而 它似乎没有像我预期的那样工作 问题似乎是使用
  • 如何在R中得到一个大的稀疏矩阵? (> 2^31-1)

    我使用一些 C 代码从数据库中获取文本文件 并从该文件创建 dgcMatrix 类型稀疏矩阵Matrix包裹 我第一次尝试构建一个具有超过 2 31 1 个非稀疏成员的矩阵 这意味着稀疏矩阵对象中的索引向量也必须比该限制长 不幸的是 向量似
  • R - 在浏览器中获取帮助而不是内置的 R 帮助程序

    我见过 R help 的两种不同行为 当你输入 density例如 帮助已在您的默认浏览器中打开 帮助在内置 R 帮助程序中打开 R 中的窗口 我目前有第二种行为 但我想在浏览器中打开帮助 我可以轻松地在这两种行为之间切换吗 无需重新安装
  • 从网络源获取 R 中的数据作为数据框

    我正在尝试使用 RCurl 包将一些空气污染背景数据作为 data frame 直接加载到 R 中 该网站有 3 个下拉框 用于在下载 csv 文件之前选择选项 如下图所示 我试图从下拉框中选择 3 个值 并使用 下载 CSV 按钮将数据作

随机推荐

  • C# 中如何知道 GraphicsPath 是否包含点

    我在用着 NET绘制图表 并且我想在用户单击对象时突出显示对象 当一个图形完全包含在一个矩形中时 这很容易 if figure Bounds Contains p bounds is a rectangle 但如果这个数字很复杂 我不知道如
  • 强制 HTML5 YouTube 视频

    关于YouTube API 博客他们正在尝试新的HTML5视频播放器 显然要在 html5 中播放视频 您必须使用 iframe 嵌入代码 但如果客户还没有加入HTML5 试用版 即使客户端的浏览器支持 HTML5 视频 播放器也会自动退回
  • 记录详细程度 mysql 5.7

    默认记录错误详细程度为 3mysql 5 7 我正在尝试将其设置为2级 in the cnf file但我不确定语法 全局变量log warnings设置详细程度 因服务器版本而异 下面的代码片段说明了 SELECT log warning
  • 如何从 javascript 渲染部分内容

    我有一个选择 根据不同选择中的选择进行填充 为此 我按照 Railscast 88 动态选择菜单 中的建议进行操作 但现在我需要渲染部分内容 传递在每个选择中选择的值 我不知道如何简单地从 select 中的 onchange 事件触发方法
  • LINQ to SQL - where 子句中的可为空类型

    我有一个表 其中的列具有空值 当我尝试查询该列为空的记录时 这有效 var list from mt in db MY TABLE where mt PARENT KEY null select new mt NAME 这不会 int id
  • 不会导致“刷新未处理集合”错误的 NHibernate 审计跟踪

    Ayende 有一篇关于如何为 NHibernate 实现简单审计跟踪的文章 here 使用事件处理程序 不幸的是 从评论中可以看出 他的实现导致抛出以下异常 集合xxx没有被flush 处理 问题似乎是隐式调用ToString在脏属性上
  • Jade - 添加动态包含的方法

    我想在玉模板中执行类似以下操作 include page content view template 因为这行不通 所以我就这样结束了 if view path include page content home else if view
  • 在 Azure 网站上禁用池回收

    我在 Azure 网站上部署了一个网站 我想禁用池回收 如果您有常规 IIS 安装 则可以通过将 回收 gt 禁用重叠回收 设置为 true 在应用程序池高级设置中禁用此功能 然而 我似乎无法在天蓝色管理控制台中找到此选项 也没有在网上找到
  • 在 Ruby on Rails 中连接 Sql 服务器

    我是新手ruby on rails 我想知道如何连接Sql server到 Rails 应用程序 我正在 Windows 环境中使用 RoR 有没有建立连接的链接SQL Server in ROR 我还没有在 Windows 上这样做过 但
  • 从 Facebook Graph API 获取超过 25 张照片

    我正在尝试使用 Graph API 检索用户被标记的所有照片 但我只能获取最新的 25 张 是否有可能获得更多 如果可以 如何获得 您是否尝试过添加限制和偏移参数 引用文档 Paging 查询连接时 有几个有用的参数可让您过滤和分页连接数据
  • 在 Google 地图上加载标记的自定义信息窗口时,iOS 应用程序冻结

    我正在尝试在 iOS 应用程序上的 Google 地图标记上实现自定义信息窗口 正如所做的那样here and here例如 我创建了一个 xib 和一个UIView为它上课 它被称为CustomInfoWindow xib班级是Custo
  • C#与Excel互操作问题,保存excel文件不流畅

    我可以打开并写入 Excel 文件 但是当我尝试通过传递路径来保存文件时 保存操作会提示 保存 对话框 我期待它能够完全将文件保存在指定路径 代码如下 excelApp Save exportToDirectory excelApp Qui
  • C# 中的三元数受到限制有什么充分的理由吗?

    Fails object o 1 2 1 test 成功 object o if 1 2 o 1 else o test 第一条语句的错误是 无法确定条件表达式的类型 因为 int 和 string 之间没有隐式转换 为什么需要这样 我将这
  • 将本地 Git 存储库从 IDE 迁移到 Visual Studio Online

    我在 Visual Studio Online 上创建了一个新的团队项目 已在 Visual Studio 2013 中连接到该项目 使用 IDE 我将本地 Git 存储库 从 GitHub 上拉下来 克隆到本地 Git 存储库部分 当我浏
  • 直接从字节数组裁剪图像

    我有一个字节数组 其中包含一个图像 我想将其保存为裁剪后的 我的工作方法是 获取字节 使用 BitmapFactory decodebytearray 将其转换为位图 使用 createbitmap sourceBitmap x1 y1 w
  • 在 SQL Server 2005 中创建新的数据库用户

    如何在sql server 2005中创建一个带有密码的新数据库用户 我需要在连接字符串中使用此用户 密码 例如 uid user pwd password CREATE LOGIN user WITH PASSWORD password
  • Python 将 Adblock 与 Selenium 和 Firefox Webdriver 结合使用

    我的目标是通过 Python 将 Adblock Plus 与 Selenium 结合使用 我已经能够将其加载到加载扩展程序的位置 但默认情况下它不包含默认过滤器 EasyList 这是我到目前为止所拥有的 from selenium im
  • 比较两个通用数字的值

    我想与两种类型的变量进行比较T extends Number 现在我想知道两个变量中哪个大于另一个或相等 不幸的是我还不知道确切的类型 我只知道它将是java lang Number 我怎样才能做到这一点 EDIT 我尝试了另一种解决方法T
  • 从 docker 注册表 v2 中删除镜像

    Docker Registry v2 有一个 API 端点来删除镜像 DELETE v2
  • 将 R 文件转换为缺少字符串值的 Stata

    我在将 R 文件转换为 Stata 格式时遇到错误 我能够将数字转换为 Stata 文件 但当我包含字符串时 出现以下错误 library foreign write dta newdata X dta Error in write dta