使用read_table与read.table读取.txt文件时,从负到正值

时间:2019-02-28 18:09:03

标签: r read.table readr

我试图读取一个相当大的txt文件,但是当我使用来自readr的read_table时,我注意到某些值的负号一定会被砍掉。

library(tidyverse)
library(curl)

curl_download(url = 'https://drive.google.com/uc?export=download&id=1WON53elbMVxAM8yWSg69nuu0cnHjaQdh', 
               destfile = '/Users/Jay/Desktop/1992_anomaly.txt')

dat1 <- read_table('/Users/Jay/Desktop/1992_anomaly.txt', 
                   col_names = FALSE,
                   col_types = cols(
                     X1 = col_integer(),
                     X2 = col_integer(),
                     X3 = col_integer(),
                     X4 = col_double(),
                     X5 = col_double(),
                     X6 = col_double()
                   ))
dat1

dat2 <- read.table('/Users/Jay/Desktop/1992_anomaly.txt', 
                   header = FALSE)
head(dat2)

# value from read_table that should be negative
dat1 %>%
  filter(
    X1 == 12 & X2 == 5 & X3 == 1295
  )



# value from read.table that's correct
    dat2 %>%
      as_tibble() %>%
      filter(
        V1 == 12 & V2 == 5 & V3 == 1295
      )

在read_table函数中是否可以更改某些内容,还是需要使用read_delim才能正确读取此文件?

1 个答案:

答案 0 :(得分:1)

尝试使用read_table2中的readr