小编And*_*rie的帖子

读取跨越R中多行的固定宽度文件中的观察结果

我正在尝试读取R中的dat文件.数据可在此处获得.

有关数据集的规范可在此处获得.

我的问题的第一部分通过使用该sep选项并提供有关每列开始和提供的位置的信息来解决na.strings="*".但是,我不知道如何处理超过1行的单个观察.

在该数据集中,所有观察结果跨越2行.

r read.table

3
推荐指数
2
解决办法
1640
查看次数

ggplot2:使用 scale_colour_brewer() 并手动指定图例名称/条目标签

我想通过 brewer 调色板使用scale_colour_brewer()scale_fill_brewer()指定填充或颜色:

diagram <- diagram + scale_colour_brewer() + scale_fill_brewer()
Run Code Online (Sandbox Code Playgroud)

尽管如此,我仍然想手动设置图例标签及其条目。我以前这样做过:

diagram + 
  scale_colour_manual(name="Cumulative Percentage", 
  values=c("#d7191c","#fdae61","#000000","#abdda4","#2b83ba"), 
  labels=c("GN","GN1","GN2","GN3","GN4"))
Run Code Online (Sandbox Code Playgroud)

如何使用自动调色板功能,同时仍手动设置图例名称和条目标签?

谢谢!

diagram r ggplot2 colorbrewer

3
推荐指数
1
解决办法
7649
查看次数

从R中的矩阵中删除无限值

m在R中有一个矩阵,我想删除-Inf值,然后计算colMeans所有列.我怎么能在R中这样做?

m <- matrix(c(1, 3, 4, -Inf, 6, 7, 4, -Inf, 6, 0, 1, 3) , nrow = 3)
m
       [,1] [,2] [,3] [,4]
[1,]     1  -Inf    4    0
[2,]     3   6    -Inf   1
[3,]     4   7      6    3
Run Code Online (Sandbox Code Playgroud)

r

3
推荐指数
1
解决办法
2万
查看次数

R:每次运行时,群集结果都不同

library(amap)
set.seed(5)
Kmeans(mydata, 5, iter.max=500, nstart=1, method="euclidean")
Run Code Online (Sandbox Code Playgroud)

在'amap'包中运行几次,但即使参数和种子值始终相同,每次运行Kmeans或其他集群方法时,聚类结果也不同.

我在不同的包中尝试了另一个kmeans功能,但仍然相同...

事实上,我想一起使用Weka和R,所以我也试过SimpleKMeans了RWeka包,这总是给出了相同的值.但是,问题是我不知道如何将集群数据与来自RWeka的SimpleKmeans的集群号一起存储,所以我被卡住了......

无论如何,如何保持聚类结果始终相同?或者如何将聚类结果存储SimpleKmeans到R中?

r cluster-analysis weka k-means

2
推荐指数
2
解决办法
4798
查看次数

R将列表组合成表格的特定格式

我有一个包含不同条目数的子列表的列表,如下所示:

x <- list(
  c("a1", "a2", "a3", "a4", "a5", "a6", "a7"),
  c("b1","b2","b3","b4"),
  c("c1","c2","c3"),
  c("d1")
)
Run Code Online (Sandbox Code Playgroud)

我想将此文件转换为具有三列的数据帧(第一列是子列表的序列,即1到4:第二列是条目;第三列代表我的停止代码,因此,我为每行使用1 ,最终结果如下:

1  a1  1
1  a2  1
1  a3  1
1  a4  1
1  a5  1
1  a6  1
1  a7  1
2  b1  1
2  b2  1
2  b3  1
2  b4  1
3  c1  1
3  c2  1
3  c3  1
4  d1  1
Run Code Online (Sandbox Code Playgroud)

我尝试使用cbind,但是,在我看来只适用于具有相同数量条目的子列表.有没有更聪明的方法呢?

r list

2
推荐指数
1
解决办法
2318
查看次数

在估算零通胀模型时如何用R获取系数

可能很简单,但我想知道,在使用zeroinfl命令时如何获取系数?

treatment <- factor(rep(c(1, 2), c(43, 41)), 
    levels = c(1, 2),labels = c("placebo", "treated"))
improved <- factor(rep(c(1, 2, 3, 1, 2, 3), c(29, 7, 7, 13, 7, 21)),
    levels = c(1, 2, 3),labels = c("none", "some", "marked"))

numberofdrugs <- rpois(84, 2)
healthvalue <- rpois(84,0.5)
y <- data.frame(healthvalue,numberofdrugs, treatment, improved)

require(pscl)
ZIP<-zeroinfl(healthvalue~numberofdrugs+treatment+improved, y)

summary(ZIP)
Run Code Online (Sandbox Code Playgroud)

我通常ZIP$coef[1]用来获取系数,但遗憾的是你在这里抓了一大堆.那么如何从ZIP模型中获取单个系数呢?

statistics r

2
推荐指数
1
解决办法
313
查看次数

read.csv使用日期值追加/修改列标题

我正在尝试将一个csv文件读入R中,该文件在某些​​列标题中具有日期值.

例如,数据文件看起来像这样:

ID  Type   1/1/2001  2/1/2001  3/1/2001  4/1/2011
A   Supply       25        35        45        55  
B   Demand       26        35        41        22
C   Supply       25        35        44        85  
D   Supply       24        39        45        75  
D   Demand       26        35        41        22
Run Code Online (Sandbox Code Playgroud)

...而我的read.csv逻辑看起来像这样

dat10 <- read.csv("c:\data.csv",header=TRUE, sep=",",as.is=TRUE)
Run Code Online (Sandbox Code Playgroud)

read.csv工作正常,除了它修改具有日期的列的名称,如下所示:

x1.1.2001  x2.1.2001  x3.1.2001  x4.1.2001
Run Code Online (Sandbox Code Playgroud)

有没有办法防止这种情况,或者之后的简单方法?

csv r dataframe

2
推荐指数
1
解决办法
670
查看次数

"#"不能用作read.table字段的分隔符?

我尝试使用"#"作为字段分隔符将文件读入数据框.但看起来R无法识别它.为什么我不能使用"#"作为字段分隔符?

谢谢

r dataframe

2
推荐指数
2
解决办法
170
查看次数

使用系统命令打开具有特定路径的Windows资源管理器

我发现可以使用以下命令通过cmd.exe程序使用预定义路径打开Windows资源管理器:

explorer PATH 
Run Code Online (Sandbox Code Playgroud)

使用以下命令返回R打开Windows资源管理器:

system("explorer", intern=TRUE) 
Run Code Online (Sandbox Code Playgroud)

但是,当我指定路径时,R将返回以下警告消息,并且不会在指定路径处打开资源管理器:

> system("explorer C:\\Users\\xxx", intern=TRUE) 
character(0) 
attr(,"status") 
[1] 1 
Warning message: 
running command 'explorer C:\Users\xxx' had status 1 
Run Code Online (Sandbox Code Playgroud)

我引用了\其他R抱怨没有从\ Users识别\ U.

但是,当执行命令时,我们希望double \只替换为一个.

当我将R警告消息中的资源管理器C:\ Users\xxx位复制粘贴到cmd.exe程序时,将在指定的路径中打开资源管理器.

有没有人知道为什么会失败?

r system

2
推荐指数
1
解决办法
3252
查看次数

从纬度和经度计算角度

我有一套纬度和经度,所以这是动物及时移动的数据.我想要做的是计算转弯角度,即它在每次运动之间转动的角度.所以说我有点1,点2和点3,纬度和经度值对应每个点(动物从点1移动到点2到点3,依此类推),我想计算这3点之间的角度,点2是中间点.我该怎么办?我的操作系统是Windows,我使用R进行分析.

所以这是我的样本数据:

longitude                       latitude
36.89379547                0.290166977
36.89384037                0.290194109
36.88999724                0.286821044
36.88708721                0.288339411
36.88650313                0.29010232
36.88563203                0.289939416
36.88545224                0.290924863
Run Code Online (Sandbox Code Playgroud)

它们是十进制度

r angle latitude-longitude

2
推荐指数
1
解决办法
4232
查看次数