gpt4 book ai didi

r - 带有逗号分隔值的read.table,每个元素内也包含逗号

转载 作者:行者123 更新时间:2023-12-04 11:39:04 24 4
gpt4 key购买 nike

我试图从逗号分隔的csv文件创建表。我知道并非所有行都具有相同数量的元素,因此我将编写一些代码以消除这些行。问题是有些行包含数字(以千为单位),这些行也包含另一个逗号。我无法正确拆分这些行,这是我的代码:

pURL <- "http://financials.morningstar.com/ajax/exportKR2CSV.html?&callback=?&t=EI&region=FRA&order=asc"
res <- read.table(pURL, header=T, sep='\t', dec = '.', stringsAsFactors=F)
x <- unlist( lapply(keyRatios, function(u) strsplit(u,split='\n')) [[1]] )

最佳答案

您需要使用quote =read.tableread.delim参数...

res <- read.delim( pURL, header=F, sep=',', dec = '.', stringsAsFactors=F , quote = "\"" ,   fill = TRUE , skip = 2 )

分隔符是 ","而不是 "\t"。这个文件中总是用成千上万的数字加引号,因此您可以使用 quote参数使R用 quote = "\""忽略引号内的逗号,并且您想跳过前两行,并使用 fill = TRUE在不平坦的地方填充空格线。
head( res )

# 2003-12 2004-12 2005-12 2006-12 2007-12 2008-12 2009-12 2010-12 2011-12 2012-12 TTM
#2 Revenue EUR Mil 2,116 2,260 2,424 2,690 2,908 3,074 3,268 3,892 4,190 4,989 5,034
#3 Gross Margin % 60.6 60.3 57.3 58.2 57.6 56.9 56.1 55.5 55.4 55.8 56.1
#4 Operating Income EUR Mil 365 404 394 460 505 515 555 618 683 832 841
#5 Operating Margin % 17.2 17.9 16.2 17.1 17.4 16.7 17.0 15.9 16.3 16.7 16.7
#6 Net Income EUR Mil 200 227 289 331 371 389 402 472 518 584 594
#7 Earnings Per Share EUR 3.90 4.30 5.44 6.22 3.48 3.62 3.78 4.36 4.82 2.77 2.80

我像这样之后设置 res的列名...
names( res ) <- res[1,]; res <- res[-1,]

它提供了更好的格式。

关于r - 带有逗号分隔值的read.table,每个元素内也包含逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19400282/

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