Tag: r

使用XML包将html表格刮到R数据框中

如何使用XML包来刮取html表格? 以巴西足球队的维基百科页面为例。 我想在R中读取它,并将“巴西队与国际足联认可的球队对阵的所有比赛名单”作为一个data.frame。 我该怎么做?

计算平均每组(平均分组)

我有一个大的数据框架看起来类似于这样的: df <- data.frame(dive=factor(sample(c("dive1","dive2"),10,replace=TRUE)),speed=runif(10)) > df dive speed 1 dive1 0.80668490 2 dive1 0.53349584 3 dive2 0.07571784 4 dive2 0.39518628 5 dive1 0.84557955 6 dive1 0.69121443 7 dive1 0.38124950 8 dive2 0.22536126 9 dive1 0.04704750 10 dive2 0.93561651 我的目标是在另一列等于某个特定值时对一列的值求平均值,并对所有值重复此操作。 即在上面的例子中,我想返回列dive每个唯一值的列speed的平均值。 所以当dive==dive1时, dive==dive1的每个值的speed是这样的。

如何用R数据框中的零代替NA值?

我有一个data.frame和一些列有NA值。 我想用零replaceNA。 我如何做到这一点?

eval(parse(…))的危险具体是什么?

有几个关于如何避免使用eval(parse(…)) R-evalparse -是-经常欠佳 避免最声名狼藉-evalparse构build体 这引发了一些问题: 为什么具体应该避免eval(parse()) ? 而最重要的是,有什么危险? 如果代码不在生产中使用,是否有危险? (我在想,有任何回避意想不到的结果的危险,显然如果你不小心parsing什么的话,你会遇到问题,但是比get()更危险吗?

删除重复的行

我已经读取一个CSV文件到R data.frame。 某些行在其中一列中具有相同的元素。 我想删除该列中重复的行。 例如: platform_external_dbus 202 16 google 1 platform_external_dbus 202 16 space-ghost.verbum 1 platform_external_dbus 202 16 localhost 1 platform_external_dbus 202 16 users.sourceforge 8 platform_external_dbus 202 16 hughsie 1 我只想要其中的一行,因为其他行在第一列中有相同的数据。

如何读取数据时,一些数字包含逗号作为千位分隔符?

我有一个csv文件,其中一些数值用逗号表示为千位分隔符,例如"1,513"而不是1513 。 将数据读入R的最简单方法是什么? 我可以使用read.csv(…, colClasses="character") ,但是之后我必须从相关元素中read.csv(…, colClasses="character")逗号,然后将这些列转换为数字,我找不到一个简单的方法来做到这一点。

ggplot的qplot不执行采购

假设我有两个源文件,第一个是example1.r ,第二个是example2.r (如下所示)。 example1.r plot(1:10,1:10) example2.r qplot(1:10,1:10) 当我来源example1.r时,绘制graphics。 但是,当我inputexample2.r时,它并不是。 这里有什么解决scheme? (在example2.r中的qplot是ggplot2的函数)

如何在R中编写trycatch

我想写的trycatch代码来处理从网上下载错误。 url <- c( "http://stat.ethz.ch/R-manual/R-devel/library/base/html/connections.html", "http://en.wikipedia.org/wiki/Xz") y <- mapply(readLines, con=url) 这两个语句运行成功。 下面我创build一个不存在的url: url <- c("xxxxx", "http://en.wikipedia.org/wiki/Xz") url[1]不存在。 如何写一个trycatch循环(函数),以便: 当url错误时,输出将是:“url错误,无法获取”。 当url错误时,代码不会停止,而是继续下载,直到url列表的末尾?

我如何从源代码安装R包?

一位朋友把我带到了R的网站上 , 我真的很想去尝试一下。 但是,第一步是从源码安装一个名为RJSONIO的包。 我知道R相当好,但我不知道如何从源代码安装包。 我正在运行Mac OSX。

使用ggplot2在同一个图上绘制两个variables作为行

一个非常新鲜的问题,但说我有这样的数据: test_data <- data.frame( var0 = 100 + c(0, cumsum(runif(49, -20, 20))), var1 = 150 + c(0, cumsum(runif(49, -10, 10))), date = seq(as.Date("2002-01-01"), by="1 month", length.out=100) ) 如何在同一图表上绘制时间序列var0和var1 ,并在x轴上使用ggplot2 ? 如果您使var0和var1不同的颜色,并可以包括一个图例奖金点! 我确信这很简单,但我找不到任何例子。