读取R中的csv文件,货币列为数字

标签 r currency symbols read.csv

我正在尝试将包含政治捐款信息的 csv 文件读入 R。据我了解,默认情况下,列作为因子导入,但我需要将数量列(数据集中的“CTRIB_AMT”)作为数字列导入,以便我可以运行各种不起作用的函数因素。该列被格式化为以“$”作为前缀的货币。

我最初使用一个简单的读取命令来导入文件:

contribs <- read.csv('path/to/file')

然后尝试将 CTRIB_AMT 从货币转换为数字:
as.numeric(as.character(sub("$","",contribs$CTRIB_AMT, fixed=TRUE)))

但这没有用。我试图用于 CTRIB_AMT 列的函数是:
vals<-sort(unique(dfr$CTRIB_AMT))
sums<-tapply( dfr$CTRIB_AMT, dfr$CTRIB_AMT, sum)
counts<-tapply( dfr$CTRIB_AMT, dfr$CTRIB_AMT, length)

查看相关问题here .

关于如何最初导入文件以便列是数字或导入后如何转换的任何想法?

最佳答案

我不确定如何直接读取它,但是一旦它进入,您就可以修改它:

> A <- read.csv("~/Desktop/data.csv")
> A
  id   desc price
1  0  apple $1.00
2  1 banana $2.25
3  2 grapes $1.97
> A$price <- as.numeric(sub("\\$","", A$price))
> A
  id   desc price
1  0  apple  1.00
2  1 banana  2.25
3  2 grapes  1.97
> str(A)
'data.frame':   3 obs. of  3 variables:
 $ id   : int  0 1 2
 $ desc : Factor w/ 3 levels "apple","banana",..: 1 2 3
 $ price: num  1 2.25 1.97

我认为这可能只是你潜艇中的一个失踪逃生。 $ 表示正则表达式中的行尾。\$ 是美元符号。但是你必须逃离逃生......

关于读取R中的csv文件,货币列为数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7337824/

相关文章:

r - 组连续工作日日期(不包括周末和节假日)

java - 如何将新的货币代码添加到 Java?

c++ - 读取文件.txt C++

r - 由于抓取文本的明显编码问题,模式匹配失败

r - 如何从您自己的代码中调用内部R C函数

r - 如何使用by将所有列暴露给data.table的子集并将其暴露给该函数?

sql舍入并不总是向上舍入

iOS 货币格式 - 删除符号前的文本

c++ - 为什么在另一个文件中声明此公共(public)成员函数时会得到重复的符号? (C++)

Ubuntu 和 SSLv2_method 的 undefined symbol