【问题标题】:Data from csv file is different as given data from a dataframe in R来自 csv 文件的数据与来自 R 中的数据框的给定数据不同
【发布时间】:2020-11-14 21:27:11
【问题描述】:

我正在尝试通过 csv 文件读取 R 中的一些数据。导出为csv类型后值发生变化的问题。我尝试使用 Notepad++ 进行编辑,但没有成功。这将影响使用这些数据的绘图的正确性。

这就是数据的显示方式(来自给定的数据框):

     cc_variant       Date        NEE
1      Fallow 2016-10-18   52.31861
2      Fallow 2016-10-19   36.75274
3      Fallow 2016-10-24   34.59082
4        Mix4 2016-10-18 -516.86837
5       Mix12 2016-10-18 -617.11000
6     Mustard 2016-10-18 -182.24568
7        Mix4 2016-10-19 -102.63776
8       Mix12 2016-10-19 -431.55887
9     Mustard 2016-10-19 -139.04121
10    Mustard 2016-10-24 -114.09939
11      Mix12 2016-10-24 -400.21260
12       Mix4 2016-10-24 -175.33208

这是读取 csv 文件后数据的显示方式:

 cc_variant       Date       NEE
1      Fallow 18.10.2016   5231861
2      Fallow 19.10.2016   3675274
3      Fallow 24.10.2016   3459082
4        Mix4 18.10.2016 -51686837
5       Mix12 18.10.2016 -61711000
6     Mustard 18.10.2016 -18224568
7        Mix4 19.10.2016 -10263776
8       Mix12 19.10.2016 -43155887
9     Mustard 19.10.2016 -13904121
10    Mustard 24.10.2016 -11409939
11      Mix12 24.10.2016 -40021260
12       Mix4 24.10.2016 -17533208

问题仅在于 NEE 值。

这是用于读取数据的命令:

 data <- read.csv2("C:\\Users\\alex\\Desktop\\orkg-stencila\\Gentsch2020\\data.csv")
    data$NEE <- as.numeric(sub('.', '', data$NEE, fixed = TRUE))

【问题讨论】:

  • 你能显示用于读取文件的命令吗
  • @akrun 感谢您尝试帮助我,我更新了我的问题 :)
  • 当您使用sub 删除. 时,预期输入数据不会改变
  • @akrun 你的意思是使用子函数,老实说我没有尝试过
  • 问题可能是该列中的一个或多个元素不是数字,即如果一个元素是“50.56a”,那么整个列就会变成字符或因子

标签: r dataframe csv


【解决方案1】:

删除 sub() 函数。如果你想检查列类型 lapply(data, class) 或 as_tibble(data) 的模式。如果要更改列 data$NEE

【讨论】:

    猜你喜欢
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 2021-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-26
    相关资源
    最近更新 更多