httr CSV 内容读取为整数而不是双精度
httr CSV Content reading as integer instead of double
我正在尝试使用来自在线资源的 httr 导入 csv,一切都很好,除了它读取一列作为整数,而它应该是双精度值,导致这些值显示为 NA
我正在使用并遇到以下问题。
getdata <- GET(paste("https://rest.zuora.com/v1/files/",r$FileId, sep = ''), auth)
invoice <- content(getdata, type = "text/csv")
Parsed with column specification:
cols(
Account.external_id__c = col_integer(),
Invoice.Amount = col_double(),
Invoice.Balance = col_integer(),
Invoice.CreatedDate = col_datetime(format = "")
)
Warning: 171 parsing failures.
row col expected actual
2475 Invoice.Balance no trailing characters .4
2726 Invoice.Balance no trailing characters .71
3197 Invoice.Balance no trailing characters .3
3287 Invoice.Balance no trailing characters .5
3350 Invoice.Balance no trailing characters .1
.... ............... ...................... ......
See problems(...) for more details.
感谢任何帮助,谢谢。
当您传递 type = "text/csv"
时,httr::content
函数使用 readr::read_csv
。您可以在 content
中将参数传递给 read_csv
,幸运的是 read_csv
允许您定义要导入的 csv 的列类型。
invoice <- content(getdata, type = "text/csv", col_types = cols(
Account.external_id__c = col_integer(),
Invoice.Amount = col_double(),
Invoice.Balance = col_double(),
Invoice.CreatedDate = col_datetime(format = "")
))
通知Invoice.Balance = col_double()
.
有关详细信息,请参阅 vignette("column-types", package = "readr")
。
我正在尝试使用来自在线资源的 httr 导入 csv,一切都很好,除了它读取一列作为整数,而它应该是双精度值,导致这些值显示为 NA
我正在使用并遇到以下问题。
getdata <- GET(paste("https://rest.zuora.com/v1/files/",r$FileId, sep = ''), auth)
invoice <- content(getdata, type = "text/csv")
Parsed with column specification:
cols(
Account.external_id__c = col_integer(),
Invoice.Amount = col_double(),
Invoice.Balance = col_integer(),
Invoice.CreatedDate = col_datetime(format = "")
)
Warning: 171 parsing failures.
row col expected actual
2475 Invoice.Balance no trailing characters .4
2726 Invoice.Balance no trailing characters .71
3197 Invoice.Balance no trailing characters .3
3287 Invoice.Balance no trailing characters .5
3350 Invoice.Balance no trailing characters .1
.... ............... ...................... ......
See problems(...) for more details.
感谢任何帮助,谢谢。
当您传递 type = "text/csv"
时,httr::content
函数使用 readr::read_csv
。您可以在 content
中将参数传递给 read_csv
,幸运的是 read_csv
允许您定义要导入的 csv 的列类型。
invoice <- content(getdata, type = "text/csv", col_types = cols(
Account.external_id__c = col_integer(),
Invoice.Amount = col_double(),
Invoice.Balance = col_double(),
Invoice.CreatedDate = col_datetime(format = "")
))
通知Invoice.Balance = col_double()
.
有关详细信息,请参阅 vignette("column-types", package = "readr")
。