0

我有一个大文本文件,它使用逗号而不是句点来表示小数。

有没有办法让 RevolScaleR 包中的 rxTexttoXdf 函数将逗号视为句点?

我怀疑我会因为这篇文章而受到如此多的抨击,因为它看起来真的很简单

编辑:

我目前正在使用一种解决方法,该解决方法涉及将数字列作为字符类型导入,然后去除逗号并将其替换为句点,然后转换为数字

library(dplyrXdf) 

imported_data %>% #dataset with character types 
mutate_if(is.character,
        funs(gsub(",",".",.))) %>% #replace commas for period
mutate_if(is.character, as.numeric) %>%  #convert character to numeric
persist(cleaned_file) # cleaned_file being a file path 

感觉有更清洁的方法可以做到这一点

4

1 回答 1

1

RxTextData有一个decimalPoint论据就是为了这个目的。

假设您的文本文件是欧洲 csv(列是;分开的,,是小数点):

txt <- RxTextData("your/file.txt", decimalPoint=",", delimiter=";")
xdf <- rxDataStep(txt, "imported.xdf")

# do stuff with xdf

一般来说,使用数据源对象来引用文件而不是文件名是一个好主意。你也可以使用rxDataStep几乎所有东西。

于 2017-07-12T15:17:58.380 回答