小编Ali*_*vil的帖子

在R中将字符转换为时间

在以下数据框中,"时间"列为 character

id<-c(1,2,3,4)
time<-c("00:00:01","01:02:00","09:30:01","14:15:25")
df<-data.frame(id,time)
Run Code Online (Sandbox Code Playgroud)

我想知道如何将其转换为time可以对其进行算术运算.

r

26
推荐指数
5
解决办法
7万
查看次数

R将table()的输出保存到数据帧中

我有以下数据框:

id<-c(1,2,3,4,1,1,2,3,4,4,2,2)
period<-c("first","calib","valid","valid","calib","first","valid","valid","calib","first","calib","valid")
df<-data.frame(id,period)
Run Code Online (Sandbox Code Playgroud)

打字

table(df) 
Run Code Online (Sandbox Code Playgroud)

结果是

period
id  calib first valid
1     1     2     0
2     2     0     2
3     0     0     2
4     1     1     1
Run Code Online (Sandbox Code Playgroud)

但是,如果我将其保存为数据框'df'

 df<-data.frame(table(df))
Run Code Online (Sandbox Code Playgroud)

'df'的格式就像

id period Freq
1   1  calib    2
2   2  calib    1
3   3  calib    1
4   4  calib    0
5   1  first    1
6   2  first    2
7   3  first    0
8   4  first    0
9   1  valid    0
10  2  valid    0
11  3  valid    2
12  4 …
Run Code Online (Sandbox Code Playgroud)

r

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

在多行中查找单个列中的最大日期

我有以下数据框:

id       <- c(1,1,2,3,3)
date     <- c("23-01-08","01-11-07","30-11-07","17-12-07","12-12-08")
df       <- data.frame(id,date)
df$date2 <- as.Date(as.character(df$date), format = "%d-%m-%y")


id     date      date2
1   23-01-08 2008-01-23
1   01-11-07 2007-11-01
2   30-11-07 2007-11-30
3   17-12-07 2007-12-17
3   12-12-08 2008-12-12
Run Code Online (Sandbox Code Playgroud)

现在我需要创建第四列并为其中的每一个插入最大事务日期id.决赛桌应如下:

id     date      date2        max
1   23-01-08 2008-01-23 2008-01-23
1   01-11-07 2007-11-01   0
2   30-11-07 2007-11-30 2007-11-30 
3   17-12-07 2007-12-17   0
3   12-12-08 2008-12-12 2008-12-12
Run Code Online (Sandbox Code Playgroud)

如果你能帮助我,我将感激不尽.

r date

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

R中的卡方拟合优度检验

我有一个观测值向量,还有一个用模型计算的值向量:

actual <- c(1411,439,214,100,62,38,29,64)
expected <- c(1425.3,399.5,201.6,116.9,72.2,46.3,30.4,64.8)
Run Code Online (Sandbox Code Playgroud)

现在我正在使用卡方拟合优度测试来看看我的模型表现得如何.我写了以下内容:

chisq.test(expected,actual) 
Run Code Online (Sandbox Code Playgroud)

但它不起作用.你能帮帮我吗?

statistics r chi-squared goodness-of-fit

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

通过R中数据帧中的记录匹配矢量值

我有一个值向量r如下:

 r<-c(1,3,4,6,7)
Run Code Online (Sandbox Code Playgroud)

和一个df包含20条记录和两列的数据框:

 id<-c(1,2,3,4,5,6,7,8,9,10,11,12,13,1,4,15,16,17,18,19,20)
 freq<-c(1,3,2,4,5,6,6,7,8,3,3,1,6,9,9,1,1,4,3,7,7)
 df<-data.frame(id,freq)
Run Code Online (Sandbox Code Playgroud)

使用r向量我需要以一种记录值的df方式提取记录样本(以新数据框的形式)freq,它将等于我在r向量中的值.不用说,如果它找到具有相同freq值的多个记录,它应该随机选择其中一个.例如,一个可能的结果可能是:

   id     frequency
   12         1
   10         3
   4          4
   7          6
   8          7
Run Code Online (Sandbox Code Playgroud)

如果有人能帮助我,我将感激不尽.

r sampling

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

日期从yyyy-mm-dd转换为dd-mm-yyyy

我正在尝试将数据框中的日期从yyyy-mm-dd转换为dd-mm-yyyy格式.例如:

D <- "06.12.2012"  
as.Date(D, "%d.%m.%Y")
D
Run Code Online (Sandbox Code Playgroud)

回报:

"2012-12-06"
Run Code Online (Sandbox Code Playgroud)

如何将其转换为"06-12-2012"?

r date

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

在控制比例的同时从 data.frame 采样[分层采样]

我有以下数据集

id1<-c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)
status<-c(1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2)
df<-data.frame(id1,status)
Run Code Online (Sandbox Code Playgroud)

df我的观察中 40%status是“2”。我正在寻找一个函数来提取 10 个观察的样本,df同时保持上述比例。

我已经看到R 中数据帧的分层随机抽样,但它不是在谈论比例。

r sampling

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

在 R 中获取 data.frame 的样本

我在 R 中有以下数据框:

id<-c(1,2,3,4,10,2,4,5,6,8,2,1,5,7,7)
date<-c(19970807,19970902,19971010,19970715,19991212,19961212,19980909,19990910,19980707,19991111,19970203,19990302,19970605,19990808,19990706)
spent<-c(1997,19,199,134,654,37,876,890,873,234,643,567,23,25,576)
df<-data.frame(id,date,spent)
Run Code Online (Sandbox Code Playgroud)

我需要以提取所有客户观察结果的方式随机抽取 3 个客户(基于 id)。

r subset dataframe

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

找到R中两个数据帧之间的公共ID

有以下数据框:

id1<-c(1,2,3,4,5)
spent<-c(10,20,30,40,50)
id2<-c(1,3,4)
x<-c(1,2,2)
df1<-data.frame(id1,spent)
df2<-data.frame(id2,x)
Run Code Online (Sandbox Code Playgroud)

我需要找到df1其中也存在的ID df2并将其所有信息导出到新的数据框(比方说df3).在此基础上df3应该如下:

   id1     spent
   1         10
   3         30
   4         40
Run Code Online (Sandbox Code Playgroud)

如果你能解决这个问题我会很感激.

r dataframe

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

来自R中数据帧的随机样本

我有以下数据框:

id<-c(1,1,2,3,3)
date<-c("23-01-08","01-11-07","30-11-07","17-12-07","12-12-08")
df<-data.frame(id,date)
df$date2<-as.Date(as.character(df$date), format = "%d-%m-%y")

id     date      date2
1   23-01-08 2008-01-23
1   01-11-07 2007-11-01
2   30-11-07 2007-11-30
3   17-12-07 2007-12-17
3   12-12-08 2008-12-12
Run Code Online (Sandbox Code Playgroud)

现在我想提取一个随机的id样本,而不是行.事实上,我正在寻找一种方法来随机选择两个ID并提取与它们相关的所有记录.例如,如果它随机选择ID 2和3,则输出数据框应如下所示:

id     date      date2
2   30-11-07 2007-11-30
3   17-12-07 2007-12-17
3   12-12-08 2008-12-12
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

r

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

标签 统计

r ×10

dataframe ×2

date ×2

sampling ×2

chi-squared ×1

goodness-of-fit ×1

statistics ×1

subset ×1