小编Jaa*_*aap的帖子

R 日期 m/d/y 至 yyyy-mm-dd

我正在尝试将数据框中的日期更改为 R 中的正确格式(m/d/y 更改为正确的 yyyy-mm-dd)。

我有这样的数据

    Date      Time  pH
1   1/4/1981  9:00  3.9 
2   1/8/1981  8:30  3.9
Run Code Online (Sandbox Code Playgroud)

ETC

我正在使用的数据框的名称是 data.cat.AC

我试过

data.cat.AC[,1]$Date <- as.Date(data.cat.AC[,1]$Date, "%Y/%m/%d") 
Run Code Online (Sandbox Code Playgroud)

...但这没有用。

我收到错误,

$ operator is invalid for atomic vectors
Run Code Online (Sandbox Code Playgroud)

关于我做错了什么有什么提示或指示吗?

r date dataframe

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

如何在特定字符之前获取字符

如何通过提取剩下的所有字符来获取以下日期的月份/.

一些示例数据:

10/1/2015 10:30:00
10/15/2015 13:32:00
2/12/2012 
Run Code Online (Sandbox Code Playgroud)

r

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

从不同格式的相同字符串中提取数字/字符

我是R的新手,我有一个如下数据集:

  Artist                                                                              Medium.Size
  1     HIROSHI SUGIMOTO (B. 1948)                     gelatin silver print mounted on paper \n 20 x 24 in. (50.8 x 61 cm.)
  2     HIROSHI SUGIMOTO (B. 1948)                     gelatin silver print mounted on paper \n 20 x 24 in. (50.8 x 61 cm.)
  3     HIROSHI SUGIMOTO (B. 1948)                                 gelatin silver print \n 20 x 24 inches (50.7 x 63.2 cm.)
  4     HIROSHI SUGIMOTO (B. 1948)                                 gelatin silver print \n 20 x 24 inches (50.7 x 63.2 cm.)
  5     HIROSHI SUGIMOTO …
Run Code Online (Sandbox Code Playgroud)

regex split r

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

将'$'删除到R中的文本中

我只想将'$'删除到文本中,我使用stringr来执行此操作

a<-'r$studio'
require(stringr)
str_replace(string=a,pattern='$',replacement='')
Run Code Online (Sandbox Code Playgroud)

它给了我以下输出

[1] 'r$studio'
Run Code Online (Sandbox Code Playgroud)

我只想要我的输出看起来像

rstudio
Run Code Online (Sandbox Code Playgroud)

我也尝试使用粘贴功能,它也没有提供我想要的东西

paste(a,sep='$')
[1] 'r$studio'
Run Code Online (Sandbox Code Playgroud)

请给我一些帮助.

r

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

删除多个列并根据R中的条件替换dataframe列的值

我有一个包含4998列的巨大数据框,列标题是公司的名称.这些列包含股票价格作为列中的值.因此,我想删除股票价格(列中的值)小于1的便士股票.因此,如果其值小于1,我想删除整个列.此外,数据框中有列,其中值波动他们低于1,但然后返回等于或大于1,在这个场景中,我希望在此列中,当值低于1时,它将被NA替换.我已经提到'将多个数据帧列中的多个值替换为另一列中的值',但我的情况略有不同.我举例说明了数据框的一小部分

df1 <- Price
     Date        A   B       C
    01/01/2000  NA  0.03    0.95
    02/01/2000  NA  0.03    0.95
    03/01/2000  NA  0.03    0.95
    04/01/2000  NA  0.03    0.95
    05/01/2000  5   0.03    0.95
    06/01/2000  6   0.5       1
    07/01/2000  7   0.5       1
    08/01/2000  8   0.5       NA
    09/01/2000  9   0.5       NA
Run Code Online (Sandbox Code Playgroud)

所需的输出数据帧

df2<- df1
Date        A   C
01/01/2000  NA  NA
02/01/2000  NA  NA
03/01/2000  NA  NA
04/01/2000  NA  NA
05/01/2000  5   NA
06/01/2000  6   NA
07/01/2000  7   1
08/01/2000  8   1
09/01/2000  9   NA
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助.

if-statement r filter dataframe

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

在R中展开分隔的列

我想根据第一列中的值扩展或拆分包含多个列的大型数据框:

这是我的意见:

a1;a2;a3    X   1
b1;b2       Y   2
c           Z   3
d1;d2;d3    ZZ  4
Run Code Online (Sandbox Code Playgroud)

并输出:

a1  X   1
a2  X   1
a3  X   1
b1  Y   2
b2  Y   2
c   Z   3
d1  ZZ  4
d2  ZZ  4
d3  ZZ  4
Run Code Online (Sandbox Code Playgroud)

到目前为止,我遇到了以下解决方案 - http://www.r-bloggers.com/expand-delimited-columns-in-r/ 但我希望有人可以建议一种更简单的方法.

我很感激任何帮助.

expand split r dataframe

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

循环遍历数据框中的每一行,从栅格中提取值并写入 csv 文件

我有一个带有Name,longitudelatitude列的数据框。我想要一个遍历每一行的函数,从栅格堆栈中提取值并根据Name列写入 csv 文件。

Name    Lon     Lat
Name1   11.11   47.87
Name2   150.1   -40.4
Name3   -50.2   -3.5
Name4   -100.3  49.8

library(raster)
s <- stack(replicate(5, {raster(matrix(runif(2160*4320), 2160), 
         xmn=-180, xmx=180, ymn=-90, ymx=90)}))

I can do that one by one:

location <- data.frame(11.11, 47.87)
ex <- extract(s, location)
write.csv(ex, "Name1.csv")
Run Code Online (Sandbox Code Playgroud)

r raster apply dataframe

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

对数据框 R 中每 n 列的列求和

我有一个df(A)10 列和 300 行。我需要以这种方式对它们之间的每两列求和:

A[,1]+A[,2] = # first result
A[,3]+A[,4] = # second result
A[,5]+A[,6]= # third result
....
A[,9]+A[,10] # last result
Run Code Online (Sandbox Code Playgroud)

预期的最终结果是一个具有 5 列和 300 行的新数据框。有没有办法做到这一点?与tapply或循环for?我知道我可以尝试上面的例子,但我正在寻找一种快速的方法谢谢

for-loop r sum dataframe

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

根据dplyr groupby输出删除/过滤行

假设我有一个如下数据框,

ID <- c("A","A","A","B","B","B","C","C") 
Type <- c(45,46,47,45,46,47,45,46)
Point_A <- c(10,15,20,8,9,10,35,33) 
df <- data.frame(ID,Type,Point_A)
Run Code Online (Sandbox Code Playgroud)

我正在对此数据框使用dplyr groupby函数,

library(dplyr)
df %>% group_by(ID) %>% summarise(q=n())
Run Code Online (Sandbox Code Playgroud)

以下是我得到的输出,

      ID     q
  (fctr) (int)
1      A     3
2      B     3
3      C     2
Run Code Online (Sandbox Code Playgroud)

现在,我要过滤计数为2的行。理想情况下,代码应删除计数为2的行。代码的输出应为:

  ID Type Point_A
1  A   45      10
2  A   46      15
3  A   47      20
4  B   45       8
5  B   46       9
6  B   47      10
Run Code Online (Sandbox Code Playgroud)

因为计数为2的行已被删除。

是否有可能做到这一点?有人可以帮我吗?

谢谢

r dataframe dplyr

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

na.locf删除领先的NAs,保留其他人

na.locfzoo包中的功能有疑问.在下面的数据框架中,我想删除领先的NA(1987年,1988年),但保留前一年(1993年)的有效值.

Year     X
1987     NA
1988     NA
1989     2
1990     5
1991     9
1992     16
1993     NA
1994     27
1995     36
Run Code Online (Sandbox Code Playgroud)

有没有人有这个问题的解决方案?

r zoo na locf

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

标签 统计

r ×10

dataframe ×6

split ×2

apply ×1

date ×1

dplyr ×1

expand ×1

filter ×1

for-loop ×1

if-statement ×1

locf ×1

na ×1

raster ×1

regex ×1

sum ×1

zoo ×1