小编Mar*_*rek的帖子

如何从多个向量中找到共同元素?

谁能告诉我如何从多个向量中找到共同元素?

a <- c(1,3,5,7,9)
b <- c(3,6,8,9,10)
c <- c(2,3,4,5,7,9)
Run Code Online (Sandbox Code Playgroud)

我想从上面的向量中得到共同的元素(例如:3和9)

r vector

143
推荐指数
3
解决办法
17万
查看次数

不要在绘图轴上使用科学记数法

我经常使用plot命令在R中做各种散点图.

有时两者,有时只有一个绘图轴用科学记数法标记.我不明白何时R决定改用科学记数法.令人惊讶的是,它通常会在标记绘图时打印出人类不会用科学记数法书写的数字,例如它将5标记为5e + 00.假设您的对数轴上升到1000,科学符号与这样的"小"数字是不合理的.

我想抑制那种行为,我总是希望R显示整数值.这可能吗?

我尝试options(scipen=10)但是它开始写5.0而不是5,而在另一个轴5仍然是5等.我怎样才能在我的R图中有纯整数值?

我在Windows 7上使用R 2.12.1.

math graphics r

67
推荐指数
4
解决办法
8万
查看次数

如何在不重复较短向量的元素的情况下cbind或rbind不同长度的向量?

cbind(1:2, 1:10)  
     [,1] [,2]  
  [1,]    1    1  
  [2,]    2    2  
  [3,]    1    3  
  [4,]    2    4  
  [5,]    1    5  
  [6,]    2    6  
  [7,]    1    7  
  [8,]    2    8  
  [9,]    1    9  
 [10,]    2   10  
Run Code Online (Sandbox Code Playgroud)

我想要一个像下面这样的输出

[,1] [,2]  
[1,] 1 1  
[2,] 2 2  
[3,]   3  
[4,]   4  
[5,]   5  
[6,]   6  
[7,]   7  
[8,]   8  
[9,]   9  
[10,]  10  
Run Code Online (Sandbox Code Playgroud)

r vector

47
推荐指数
3
解决办法
7万
查看次数

R:从x,y,z绘制3D表面

想象我有一个3列矩阵
x,y,z,其中z是x和y的函数.

我知道如何绘制这些点的"散点图" plot3d(x,y,z)

但是,如果我想要一个表面,我必须使用其他命令,如surface3d问题是它不接受与plot3d相同的输入它似乎需要一个矩阵与

(nº elements of z) = (n of elements of x) * (n of elements of x)
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到这个矩阵?我尝试使用命令interp,就像我需要使用等高线图时一样.

如何在不计算此矩阵的情况下直接从x,y,z绘制曲面?如果我的分数太多,那么这个矩阵就太大了.

干杯

3d plot r matrix rgl

31
推荐指数
4
解决办法
10万
查看次数

将列类型转换为数字时更改值

我有一个上面格式的数据文件.
我把它加载到R中,并尝试使用dist列中的值绘制直方图,我得到错误"x必须是数字".因此我尝试更改格式.

> head(data)

    V1        V2
1 type gene_dist
2    A     64667
3    A     76486
4    A     97416
5    A     30876
6    A     88018

> summary(data)
    V1            V2     
 A   : 67   100    :  1  
 B   :122   100906 :  1  
 type:  1   102349 :  1  
            1033   :  1  
            10544  :  1  
            10745  :  1  
            (Other):184  
Run Code Online (Sandbox Code Playgroud)

我尝试使用列设置格式,sapply但值已更改:

> data[,2]<-sapply(data[,2],as.numeric)

> head(data)
    V1  V2
1 type 190
2    A 146
3    A 166
4    A 189

summary(data)
    V1            V2        
 A   : …
Run Code Online (Sandbox Code Playgroud)

r

23
推荐指数
1
解决办法
6万
查看次数

从Windows命令提示符运行R

我在一个txt文件中有一个R程序说"functions.txt".
我加载"functions.txt"使用文件将R source("function.txt") ,然后调用函数f1(),f2()等,其被声明和内定义 "function.txt"文件.在
使用library()之前我还需要加载几个R库f1(),f2()等等.

我的问题是,如果不打开R环境,我可以从Windows提示符中实现所有这些(即调用函数f1()f2())吗?

所以基本上我想

  1. 加载我需要运行将R库f1(),f2()等等.
  2. 加载function.txt文件
  3. 运行各个函数f1()等.
  4. 记录结果

所有来自windows的命令promt c:\>

我在我的电脑上安装了Windows版本的R.
由于我不是非常精通计算机,所以任何人都可以给出详细的答案.

问候

windows platform r

22
推荐指数
3
解决办法
6万
查看次数

相当于min()的rowMeans()

我已经看到在R邮件列表上多次询问这个问题,但仍然找不到满意的答案.

假设我是一个矩阵 m

m <- matrix(rnorm(10000000), ncol=10) 
Run Code Online (Sandbox Code Playgroud)

我可以通过以下方式获得每行的平均值:

system.time(rowMeans(m))  
   user  system elapsed   
  0.100   0.000   0.097
Run Code Online (Sandbox Code Playgroud)

但是获得每行的最小值

system.time(apply(m,1,min))  
   user  system elapsed   
 16.157   0.400  17.029
Run Code Online (Sandbox Code Playgroud)

需要的时间超过100倍,有没有办法加快速度?

optimization r

18
推荐指数
5
解决办法
1万
查看次数

包开发:多个文件或单个文件

我一直在寻找一堆不同的软件包,我注意到确实没有一个简洁明了的函数存储方法.一些包作者将所有这些包装在一个文件中,而其他作者将它们分成单个文件.

我已阅读了许多软件包创建指南,但没有提供具体的指导或建议.

很想听听你对此的看法.

r r-package

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

如何将read.table()多个文件读入R中的单个表?

我有文件名<InputData>.<TestName>.csv,我想为每个测试制作图表.我能看到的最好方法是为每个TestName创建一个R表.每个测试都会生成相同的数据列,因此我想将每个测试的所有数据都拉入一个R数据表,并为输入数据添加一列.

我想这样做:

read.tables(c("B217.SE.csv", "C10.SE.csv"), sep=",")
Run Code Online (Sandbox Code Playgroud)

产生(例如):

       Filename  col1   col2
1   B217.SE.csv     1      2
2   B217.SE.csv     2      4
3   C10.SE.csv      3      1
4   C10.SE.csv      4      5
Run Code Online (Sandbox Code Playgroud)

这样做的正确方法是什么?我不知道的一些现有功能?使用for循环在R语言中写出来?

import r

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

如何更改点并将回归添加到cloudplot(使用R)?

为了弄清楚我在问什么,我创造了一个简单的例子.第一步是创建一些数据:

gender <- factor(rep(c(1, 2), c(43, 41)), levels = c(1, 2),labels = c("male", "female"))
numberofdrugs <- rpois(84, 50) + 1
geneticvalue <- rpois(84,75)
death <- rpois(42,50) + 15
y <- data.frame(death, numberofdrugs, geneticvalue, gender)
Run Code Online (Sandbox Code Playgroud)

所以这些是一些随机日期合并为一个data.frame.因此,从这些日期开始,我想绘制一个云,我可以在男性和女性之间进行区分,并在其中添加两个简单的回归(一个用于女性,一个用于男性).所以我已经开始了,但我无法达到我想要的程度.请看下面到目前为止我做了什么:

require(lattice)
cloud(y$death~y$numberofdrugs*geneticvalue)
Run Code Online (Sandbox Code Playgroud)

基本形式的云图

xmale <- subset(y, gender=="male")
xfemale <- subset(y, gender=="female")

death.lm.male <- lm(death~numberofdrugs+geneticvalue, data=xmale)
death.lm.female <- lm(death~numberofdrugs+geneticvalue, data=xfemale)
Run Code Online (Sandbox Code Playgroud)

如何在使用云命令时为男性或女性制作不同的点(例如蓝色和粉红色点而不仅仅是蓝色十字),如何将两个估计模型添加到云图中?

任何想法都表示赞赏!谢谢你的想法!

3d regression r ggplot2 lattice

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

标签 统计

r ×10

3d ×2

vector ×2

ggplot2 ×1

graphics ×1

import ×1

lattice ×1

math ×1

matrix ×1

optimization ×1

platform ×1

plot ×1

r-package ×1

regression ×1

rgl ×1

windows ×1