【问题标题】:Reading floats from a file in R从 R 中的文件中读取浮点数
【发布时间】:2014-11-24 10:59:25
【问题描述】:

我有一个浮点值由制表符分隔的文件:

$头文件.data

1756.38 378.6   0.0
1754.2  378.62  0.0
1752.79 378.52  0.0
1751.3  378.43  0.0
1756.38 378.71  0.0
1762.2  378.41  0.0
1760.38 378.32  0.0
1763.38 378.6   0.0
1763.38 378.49  0.0
1762.29 378.41  0.0

但是,当我在 R 脚本中加载文件时,我会丢失第一个字段的小数部分:

f

头(f)

    V1    V2 V3
1 1756 378.6  0
2 1754 378.6  0
3 1753 378.5  0
4 1751 378.4  0
5 1756 378.7  0
6 1762 378.4  0

如何在不丢失部分信息的情况下加载文件?

谢谢。

【问题讨论】:

  • 请发布str(f)的结果。这可能只是在打印时四舍五入,而不是导入问题。
  • 其他你可以试试:添加参数numerals="no.loss"
  • + str(f) 'data.frame': 2464 obs。 3 个变量:$ V1:数字 1756 1754 1753 1751 1756 ... $ V2:数字 379 379 379 378 379 ... $ V3:数字 0 0 0 0 0 0 0 0 0 0 ...
  • 如果我添加参数会出现错误:未使用参数 (numerals = "no.loss")
  • @phonixor 我应该把这个参数放在哪里?因为我试过了,还是不行。

标签: r


【解决方案1】:

在 R 中,信息的呈现不同于信息的底层存储。

例如,您可以使用digits 选项来控制有效位数:

> print(3.1415928, digits=2)
[1] 3.1

> print(3.1415928, digits=4)
[1] 3.142

> options(digits=4)

> print(3.1415928)
[1] 3.142

> options(digits=7)

> print(3.1415928)
[1] 3.141593

R 中的默认值是:

> options(digits=7)

尝试将您的数字选项设置为更高的数字。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-15
    • 1970-01-01
    • 2021-10-19
    • 2011-05-09
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    相关资源
    最近更新 更多