gpt4 book ai didi

r - 如何在R中读取其中某些值包含百分比符号(%)的csv文件

转载 作者:行者123 更新时间:2023-12-04 12:08:50 26 4
gpt4 key购买 nike

是否有一种干净/自动的方法来转换R中以百分比(带有尾随%符号)的百分比格式设置的CSV值?

以下是一些示例数据:

actual,simulated,percent error
2.1496,8.6066,-300%
0.9170,8.0266,-775%
7.9406,0.2152,97%
4.9637,3.5237,29%

可以使用以下内容读取:
junk = read.csv("Example.csv")

但是所有%列都被读为字符串并转换为因数:
> str(junk)
'data.frame': 4 obs. of 3 variables:
$ actual : num 2.15 0.917 7.941 4.964
$ simulated : num 8.607 8.027 0.215 3.524
$ percent.error: Factor w/ 4 levels "-300%","-775%",..: 1 2 4 3

但我希望它们是数值。

read.csv是否有其他参数?有没有一种方法可以轻松地对所需的列进行后期处理以转换为数值?其他解决方案?

注意:当然,在此示例中,我可以简单地重新计算值,但是在具有较大数据文件的真实应用程序中,这是不实际的。

最佳答案

R中没有“百分比”类型。因此,您需要进行一些后处理:

DF <- read.table(text="actual,simulated,percent error
2.1496,8.6066,-300%
0.9170,8.0266,-775%
7.9406,0.2152,97%
4.9637,3.5237,29%", sep=",", header=TRUE)

DF[,3] <- as.numeric(gsub("%", "",DF[,3]))/100

# actual simulated percent.error
#1 2.1496 8.6066 -3.00
#2 0.9170 8.0266 -7.75
#3 7.9406 0.2152 0.97
#4 4.9637 3.5237 0.29

关于r - 如何在R中读取其中某些值包含百分比符号(%)的csv文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20892916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com