使用ggplot2::diamonds数据集,我试图计算成本低于一定数量的钻石数量.我能弄清楚的唯一方法是创建一个新变量并对数据进行子集化,然后计算新向量中的剩余观察值.
例:
newVector <- subset(diamonds, price<600)
nrow(newVector)
Run Code Online (Sandbox Code Playgroud)
我想知道解决这个问题的最佳方法是什么?因为我的方法感觉笨重.
我在R中有一个名为A的数据表,它有三列Col1,Col2和Col3.另一个名为B的表也具有相同的三列.我想删除表A中的所有行,其中对(Col1,Col2)存在于表B中.我尝试过,但我不知道如何执行此操作.最近几天我被困在这上面了.
谢谢,
我有一个带日期和时间的向量.向量的一些元素包括实际日期(+时间)以及它下面的任何时间是它各自的时间.我想用第1行的日期Dec-17-15填充第2/3/4/5行,同时保留这些行中的原始时间.同样,我希望第6行中的日期延伸到7/8/9/10.有没有办法在没有循环的情况下做到这一点?我很感激您的帮助
d["X1"]
X1
1 Dec-17-15 05:17PM
2 04:46PM
3 04:44PM
4 04:40PM
5 04:39PM
6 Dec-16-15 10:37PM
7 07:48PM
8 07:41PM
9 06:35PM
10 06:09PM
Run Code Online (Sandbox Code Playgroud) 我有一个整数的文本文件,我一直在读R并暂时存储为数据帧.但是,将它强制转换为矩阵(比如说y,使用as.matrix())似乎与我创建的矩阵(x)没有相同.也就是说,如果我查看单个条目,我会得到不同的输出
> y[1,1]
V1
0
Run Code Online (Sandbox Code Playgroud)
而不是
> x[1,1]
[1] 0
Run Code Online (Sandbox Code Playgroud)
有人可以解释这个区别吗?
我想找到每组2个组合之间的差异,按列分组A.
输入数据:
A B
11 320836
11 5719750
6 29911154
6 29912280
6 29912285
Run Code Online (Sandbox Code Playgroud)
以下是预期的输出:
A B C Difference
11 320836 5719750 5398914
6 29911154 29912280 1126
6 29911154 29912285 1131
6 29912280 29912285 5
Run Code Online (Sandbox Code Playgroud) 我有超过57个数据帧,其中一些有零行.我该如何删除这些?
我试过下面的代码
test=ls()
rm(dim(test[1]==0))
Run Code Online (Sandbox Code Playgroud)
并得到一个错误
Error in rm(dim(test[1] == 0)) :
... must contain names or character strings
Run Code Online (Sandbox Code Playgroud) 我有一个名为的数据帧Cust_Amount,如下所示:
Age Amount_Spent
25 20
43 15
32 27
37 10
45 17
29 10
Run Code Online (Sandbox Code Playgroud)
我想将其划分为相同规模的年龄组,并将每个年龄组的花费总和如下:
Age_Group Total_Amount
20-30 30
30-40 37
40-50 32
Run Code Online (Sandbox Code Playgroud) 我有一个向量c(2, 5),我想把它变成n个元素的向量,其中位置2和5等于1,任何剩余的位置等于零.
即如果我想创建一个长度为6的向量,我想使用向量c(2, 5)生成以下向量:
c(0, 1, 0, 0, 1, 0)
我无法将列分配给它们上面的字符串.我相信这样做的正确方法是使用该attach()功能.我对加载数据的列的csv文件Flight,O.ring和Temp.我试图通过使用该detach()功能清除以前附加的数据,但没有任何运气.
### Files saved in the directory below
setwd("/Users/newUser/desktop/programming")
data <- read.table("Challenger.csv", header=TRUE)
attach(data)
O.ring
Error: object 'O.ring' not found
Flight
Error: object 'Flight' not found
Temp
Error: object 'Temp' not found
fit1 <- glm(O.ring ~ Temp + Pressure, family=binomial(logit))
Error in eval(expr, envir, enclos) : object 'O.ring' not found
fit1
Error: object 'fit1' not found
Run Code Online (Sandbox Code Playgroud)
编辑:我还需要帮助访问存储在数据中的列以使用它们进行建模.知道我的问题是什么fit1?
我试图在R中测试一些代码,但它一直给我一个错误,波形键(〜)是一个意外的符号?
有什么办法可以解决这个问题吗?
这是我试图运行的代码之一:
# kNN
set.seed(123)
fit.knn <- train(job permanency~., data=dataset, method="knn", metric=metric, preProc=c("permanency rate", "job skills"), trControl=control)
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
错误:"fit.knn < - train(job permanency")中的意外符号
我认为这是一个非常简单的转换,但我无法做到正确:
我在数据表中有两列.一个包含日期,另一个包含一些唯一的数字.我基本上是特定月份和年份的行数.
我想知道2011 - 02年的读数,然后是2011-03的读数,依此类推.
学习http://data.princeton.edu/R/linearModels.html,我明白了
> lmfit = lm( change ~ setting + effort )
Run Code Online (Sandbox Code Playgroud)
使用change,setting以及effort从以前加载的数据(> fpe <- read.table("http://data.princeton.edu/wws509/datasets/effort.dat")).
没有$我得到执行上述命令
Error in eval(expr, envir, enclos) : object 'change' not found
Run Code Online (Sandbox Code Playgroud)
如果我使用$喜欢的话
> lmfit = lm( fte$change ~ fte$setting + fte$effort )
Run Code Online (Sandbox Code Playgroud)
然后它工作.
那么,为什么他们这样呈现呢> lmfit = lm( change ~ setting + effort )?
有没有办法将元素释放到数组的末尾?
例如,从第6个到最后释放为:
char *str = "Hello, World\n";
char *ptr = str+6;
free(ptr);
Run Code Online (Sandbox Code Playgroud)
给出了"分段错误"!
有没有办法实现?