r - 粘贴的意外输出(data.frame(a=as.character(as.Date(“2019-12-31”))))
问题描述
#eg1:
paste(data.frame(a=as.character(as.Date("2019-12-31"))))
[1]"1"
#eg2:
paste(data.table(a=as.character(as.Date("2019-12-31"))))
[1]"2019-10-12"
#eg3:
paste(data.frame(a=as.Date("2019-12-31")))
[1] 18261
我的预期就像 eg2,但我不想使用 data.table
我只有一个问题:如何解决这个问题,包括 eg2 和 eg3 ?
解决方案
当您将字符放入 data.frame 时,它会变成一个因素。当您打印一个因素时,似乎 data.table 和 data.frame 被强制不同。对于您的特定情况,我可以通过在使用粘贴之前取消列出并转换为字符来解决它。
> paste(as.character(unlist(data.frame(a=as.character(as.Date("2019-12-31"))))))
[1] "2019-12-31"
或者,您可以通过设置stringsAsFactors = FALSE
并避免因子转换来避免这种情况。
> paste(data.frame(a=as.character(as.Date("2019-12-31")), stringsAsFactors = FALSE))
[1] "2019-12-31"
推荐阅读
- json - 将 JSON 解组为结构,但将值转换为所需的 dtype
- firebase-cloud-messaging - 如何通过令牌 ID 测试对设备的 FCM 推送通知
- node.js - 为什么 Redis 会返回部分完成的事务?
- rest - Strapi CMS 获取下一个或上一个条目
- android - 如何更改 AlertDialog 中的 EditText 样式?
- android - 以编程方式更改列表中每个项目的可绘制颜色
- reactjs - 如果用户是“特权”,则限制对路由的访问
- firebase - 如何在flutter中将数据从CSV文件导入数据库
- java - 使用 Gson 添加 Json 记录
- javascript - 尽管在 React js 中使用了 memo 和 useCallback,如何防止在更改父组件中的状态时不必要地重新渲染子组件