【问题标题】:Convert integer columns to double将整数列转换为双精度
【发布时间】:2014-04-18 05:56:48
【问题描述】:

我导入了 2 个包含实验数据的 csv 文件,一个是对照组,一个是测试组。此处显示的头像

问题在于,在“Gaze_T”中,5+ 列是双精度类型,而在“Gaze_C”中,它们是整数类型。

因此,当对两个数据帧中的距离进行汇总时,我会得到不同的输出

如何将 Gaze_C 中的整数列转换为双精度列?

【问题讨论】:

  • 您的summary(Gaze_C$Distance) 看起来更像是一个因素。试试Gaze_C$Distance <- as.numeric(as.factor(Gaze_C$Distance))。或者使用read.table()读取csv文件时使用colClasses参数。
  • 根据你head(Gaze_C)的输出,Gaze_C$distance绝对不是整数列。这可能是一个因素,这意味着您应该检查源文件中此列中的非数字值并在导入期间进行处理。
  • 按照斯蒂芬的建议,我将列转换为数字,这确实是问题所在。
  • @Rickyfox,我知道这个问题已经解决了,但是对于未来的问题,如果你还不熟悉str,那个命令(例如str(Gaze_C))会让你看到每个变量的类型最初检查您的数据时。如果您使用library(dplyr),您也可以使用glimpse(Gaze_C) 进行类似检查。根据您的帖子,您似乎还不熟悉这些命令?如果没有,希望这些对您将来有所帮助。

标签: r type-conversion


【解决方案1】:

使用 as.DATATYPE(列)

as.double(Gaze_T$Distance) 

这会将 Gaze_T 中的距离列转换为双倍。

【讨论】:

    猜你喜欢
    • 2011-07-07
    • 1970-01-01
    • 2016-01-01
    • 2013-05-13
    • 2016-10-23
    • 1970-01-01
    • 2014-11-10
    • 1970-01-01
    • 2015-09-13
    相关资源
    最近更新 更多