小编Aru*_*run的帖子

更改矢量名称

为了整理我的数据,我使用了以下功能 -

tolower(gsub("\\.","",names(data)))
Run Code Online (Sandbox Code Playgroud)

从长矢量名称中删除大写和点(.) Last.Inquiry.For.Loan

它工作并回馈:lastinquiryforloan.但它并没有坚持下去.当我跑步时summary(data),我会看到所有旧的矢量名称.如何将此更改永久化,以便我更容易进行分析?

r

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

具有预定义统计数据的多个箱图,使用r中的类似格子的图形

我有一个看起来像这样的数据集

 VegType    87MIN   87MAX   87Q25   87Q50   87Q75   96MIN   96MAX   96Q25   96Q50     96Q75 00MIN   00MAX   00Q25   00Q50   00Q75
 1          0.02    0.32    0.11    0.12    0.13    0.02    0.26    0.08    0.09    0.10    0.02    0.28    0.10    0.11    0.12
 2          0.02    0.45    0.12    0.13    0.13    0.02    0.20    0.09    0.10    0.11    0.02    0.26    0.11    0.12    0.12
 3          0.02    0.29    0.13    0.14    0.14    0.02    0.27    0.11    0.11    0.12    0.02    0.26    0.12    0.13    0.13
 4          0.02    0.41    0.13    0.13    0.14    0.02    0.58    0.10    0.11    0.12    0.02    0.34    0.12    0.13 …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 lattice boxplot

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

R - 将一列因子转换为二进制字符而不会丢失信息

我是R的新手,只是教自己如何使用它.我在Windows 7上使用R版本3.0.1(如果相关的话).

我无法将factors的数据转换为仅字符.我的数据如下:

activity <- c("1","2","10","ZZ")
Run Code Online (Sandbox Code Playgroud)

我想要的是输出

activity <- c("01","02","10","ZZ") 
Run Code Online (Sandbox Code Playgroud)

其中,每个字符串,如果只包含一个字符,应该以a 0为前缀(如上所示).

我尝试使用"as.character",但之前没有添加零.然后我发现sprintf并尝试:

activity <- sprintf("%02d", (activity))
# [1] "01" "02" "03" "04"
Run Code Online (Sandbox Code Playgroud)

这会在找到的任何单个数据前面添加零"0",但麻烦的是它会修改所有级别的数据(如上所示).

有谁知道这里有什么问题以及如何解决它?谢谢.

printf r character

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

如何在R中编写动态累积倍数

假设我有一个向量x:

x <- c(X1, X2, X3, ..., Xn)
Run Code Online (Sandbox Code Playgroud)

我想编写一个自动获取结果系列的函数:

y <- c(X1, X1*X2, X1*X2*X3, ..., X1*X2*X3*...*Xn)
Run Code Online (Sandbox Code Playgroud)

有人能告诉我如何在R中这样做吗?

r

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

R - 将数据帧乘以另一个数据帧

我有2个数据帧df1和df2.df1和df2具有相同的大小(行和列)和相同的因子.说:

df1 <- data.frame(a=c('alpha','beta','gamma'), b=c(1,2,3), c=c('x','y','z'), d=c(4,5,6))

      a b c d
1 alpha 1 x 4
2  beta 2 y 5
3 gamma 3 z 6
Run Code Online (Sandbox Code Playgroud)

df2 <- data.frame(a=c('alpha','beta','gamma'), b=c(7,8,9), c=c('x','y','z'), d=c(10,11,12))

      a b c  d
1 alpha 7 x 10
2  beta 8 y 11
3 gamma 9 z 12
Run Code Online (Sandbox Code Playgroud)

我想将这两个数据帧相乘并获得像tyhis这样的结果:

      a b  c d
1 alpha 7  x 40
2  beta 16 y 55
3 gamma 27 z 72
Run Code Online (Sandbox Code Playgroud)

我做了一些搜索并尝试了以下代码:

M <- merge(df1,df2,by=c('a','c'))
S <- M[,grepl("*\\.x$",names(M))] * …
Run Code Online (Sandbox Code Playgroud)

r multiplication dataframe

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

为什么不能在R中的数据帧中排序一个因子?

我有一个数据框(名为'mdf'),其中包含两列.基本信息如下:

> head(mdf); tail(mdf)
  Country Rank
1     ABW  161
2     AFG  105
3     AGO   60
4     ALB  125
5     ARE   32
6     ARG   26
    Country Rank
184     WSM  181
185     YEM   90
186     ZAF   28
187     ZAR  112
188     ZMB  104
189     ZWE  134
> str(mdf)
'data.frame':   189 obs. of  2 variables:
 $ Country: Factor w/ 229 levels "","ABW","ADO",..: 2 4 5 6 7 8 9 11 12 13 ...
 $ Rank   : Factor w/ 195 levels "",".. Not available. …
Run Code Online (Sandbox Code Playgroud)

r dataframe

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

匹配并计算R中的数据矩阵

数据集如下所示:

 Gene SampleName
gene1    sample1
gene1    sample2
gene1    sample3
gene2    sample2
gene2    sample3
gene2    sample4
gene3    sample1
gene3    sample5
Run Code Online (Sandbox Code Playgroud)

我的目标是创建一个这样的数据矩阵:

       gene1 gene2 gene3
gene1      -     2     1
gene2      -     -     0
gene3      -     -     -
Run Code Online (Sandbox Code Playgroud)

gene1vs gene22因为他们共享相同的样本sample2sample3.gene1vs gene3是1,因为他们只共享一个相同的样本 - sample1.

我的问题是如何在R或Perl中实现这一目标?实际数据集要大得多.我非常感谢你的帮助.


这是dput(df)R 的输出:

df <- structure(list(Gene = c("gene1", "gene1", "gene1", "gene2", "gene2", 
"gene2", "gene3", "gene3"), SampleName = c("sample1", "sample2", 
"sample3", "sample2", "sample3", "sample4", "sample1", "sample5"
)), …
Run Code Online (Sandbox Code Playgroud)

perl r count match

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

在R中使用'fastmatch'包

我必须在大约10MM值的向量内找到1MM数值的索引.我找到了包fastmatch,但是当我使用该函数时fmatch(),我只返回第一个匹配的索引.

有人可以帮我使用这个功能找到所有的值,而不仅仅是第一个?我意识到这是一个基本问题,但在线文档非常稀疏,并且fmatch大大减少了计算时间.

非常感谢!


以下是一些示例数据 - 为了本练习的目的,让我们调用此数据框A:

              DateTime     Address       Type     ID
1  2014-03-04 20:21:03   982076970          1  2752394
2  2014-03-04 20:21:07 98174238211          1  2752394
3  2014-03-04 20:21:08 76126162197          1  2752394
4  2014-03-04 20:21:16  6718053253          1  2752394
5  2014-03-04 20:21:17 98210219176          1  2752510
6  2014-03-04 20:21:20  7622877100          1  2752510
7  2014-03-04 20:21:23  2425126157          1  2752510
8  2014-03-04 20:21:23  2425126157          1  2752510
9  2014-03-04 20:21:25   701838650          1  2752394
10 2014-03-04 20:21:27 98210219176          1  2752394
Run Code Online (Sandbox Code Playgroud)

我想要做的是找到Type每个的唯一值的数量Address …

r matching

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

R根据其参考列将特定列从一个数据帧合并到另一数据帧

我是初学者R用户。我有两个巨大的数据框,我想在hkdata.2处添加一个名为Vaccine的新列,该数据是根据hkdata.2的2个参考列(hhID和成员)从另一个DF遵从性获取的,有人可以帮我吗?

hkdata.2
hhID    member  T0  delta   X_hh    X_fm    ILI age
1          1    7      0    0       0        0  44
1          2    7      0    0       0        0  36
2          1    8      0    1       0        0  39
2          2    8      0    1       0        0  39

adherence
hhID member mask soap vaccine
1      0      1    0    1   
1      1      1    1    1
1      2      0    0    1
2      0      1    0    0
2      1      0    0    0
2      2      1    0    1
Run Code Online (Sandbox Code Playgroud)

所以最后我可以得到这样的东西。在hkdata.2中增加了一个称为疫苗的列

hkdata.2 …
Run Code Online (Sandbox Code Playgroud)

merge r dataframe

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

R选择在特定日期之前发生的数据

所以我有两个看起来像这样的数据集(表):

数据集A:

Email   Date    Action
aaaa    1/5/14  won
bbbb    2/10/14 won
cccc    1/14/14 won
dddd    3/3/14  won
eeee    4/19/14 won
Run Code Online (Sandbox Code Playgroud)

数据集B:

Email   Date    Action
aaaa    1/5/14  won
aaaa    1/6/14  call
aaaa    1/9/14  email
aaaa    1/20/14 email
bbbb    2/8/14  email
bbbb    2/9/14  email
bbbb    2/10/14 won
bbbb    2/11/14 callback
bbbb    2/12/14 email
bbbb    2/13/14 won
cccc    1/14/14 won
cccc    1/16/14 call
dddd    2/3/14  email
dddd    3/3/14  won
eeee    4/19/14 won
eeee    4/21/14 call
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像这样:

Email   Date    Action
bbbb    2/8/14  email
bbbb …
Run Code Online (Sandbox Code Playgroud)

r

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

标签 统计

r ×10

dataframe ×3

boxplot ×1

character ×1

count ×1

ggplot2 ×1

lattice ×1

match ×1

matching ×1

merge ×1

multiplication ×1

perl ×1

printf ×1