【发布时间】:2017-08-11 19:14:07
【问题描述】:
我正在尝试将地理纬度和经度读入 R。这些地理数据通常是超过 6 位的数值。 我试图用“read_excel”包中的 read_excel() 和 base R 中的 read.csv 和“readr”包中的 read_csv() 来读取 excel 文件。 但是,上述功能都不能正确读取这些数据而不会丢失信息。所有这些函数,无一例外,只能读取截断为 4 位或 5 位的数值。 我还尝试使用“options(digits = 8)”在读取数据之前指定默认数字,但它不起作用。 这里我为“readr”包中的 read_csv() 函数做了一个可重现的例子:
read_csv("112.8397456,35.50496106\n112.583984,37.8519194\n112.5826569,37.8602818", col_names = FALSE)
系统自动将数据截断为5位:
# A tibble: 3 × 2
X1 X2
<dbl> <dbl>
1 112.8397 35.50496
2 112.5840 37.85192
3 112.5827 37.86028
我在stackoverflow上查了一下,似乎没有提出类似的问题。谁能给我一个可行的答案,告诉我如何读取这种信息丢失形式的数据?谢谢。 :)
【问题讨论】:
-
请注意,
options(digits = ...)还计算小数点前的位数,因此如果位数 = 7,您会得到 112.8397,因为其中包含 7 个有效数字 -
@docendodiscimus 谢谢。我想我误解了“数字”这个词。
标签: r csv data-import readr