我有一个阵列
a <- c(1,1,1,1,1,2,3,4,5,5,5,5,5,6,7,7,7,7)
Run Code Online (Sandbox Code Playgroud)
我想用一些命令告诉我哪个是数组中最常用的数字?
有一个简单的命令吗?
我需要找出每个模式(行的模式,而不是列)获得的值,它在我的数据行中出现的次数.
这是我的数据
> head(TiposMotivA)
Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Q16 Q17 Q18 Q19 Q20 Q21
1 5 4 4 4 6 6 7 6 4 6 6 6 4 4 4 4 6 7 4 4 6
2 5 4 4 5 5 5 5 5 5 5 7 5 4 3 1 6 6 5 6 7 7
3 4 5 4 4 5 4 5 4 5 4 …Run Code Online (Sandbox Code Playgroud) 我想比较来自两个不同索赔付款人的CPT代码的费用.两者都有标准和非标准价格的供应商.我使用dplyr和modeest::mlv,但它不工作了如预期.下面是一些样本数据;
source CPTCode ParNonPar Key net_paid PaidFreq seq
ABC 100 Y ABC100Y -341.00 6 1
ABC 100 Y ABC100Y 0.00 2 2
ABC 100 Y ABC100Y 341.00 6 3
XYZ 103 Y XYZ103Y 740.28 1 1
XYZ 104 N XYZ104N 0.00 2 1
XYZ 104 N XYZ104N 401.82 1 2
XYZ 104 N XYZ104N 726.18 1 3
XYZ 104 N XYZ104N 893.00 1 4
XYZ 104 N XYZ104N 928.20 2 5
XYZ 104 N XYZ104N 940.00 …Run Code Online (Sandbox Code Playgroud) 我需要添加一个平均线和模式的值,例如这种情节:
我用这个来计算垃圾箱的数量:
bw <- diff(range(cars$lenght)) / (2 * IQR(cars$lenght) / length(cars$lenght)^(1/3))
Run Code Online (Sandbox Code Playgroud)
情节:
ggplot(data=cars, aes(cars$lenght)) +
geom_histogram(aes(y =..density..),
col="red",
binwidth = bw,
fill="green",
alpha=1) +
geom_density(col=4) +
labs(title='Lenght Plot', x='Lenght', y='Times')
cars$lenght
Run Code Online (Sandbox Code Playgroud)
168.8 168.8 171.2 176.6 176.6 177.3 192.7 192.7 192.7 178.2 176.8 176.8 176.8 176.8 189.0 189.0 193.8 197.0 141.1 155.9 158.8 157.3 157.3 157.3 157.3 157.3 157.3 157.3 174.6 173.2
提前致谢.
我试图通过小组找到最频繁的价值.在以下示例数据框中:
df<-data.frame(a=c(1,1,1,1,2,2,2,3,3),b=c(2,2,1,2,3,3,1,1,2))
> df
a b
1 1 2
2 1 2
3 1 1
4 1 2
5 2 3
6 2 3
7 2 1
8 3 1
9 3 2
Run Code Online (Sandbox Code Playgroud)
我想添加一个列'c',当其值按'a'分组时,'b'中出现的值最多.我想要以下输出:
> df
a b c
1 1 2 2
2 1 2 2
3 1 1 2
4 1 2 2
5 2 3 3
6 2 3 3
7 2 1 3
8 3 1 1
9 3 2 1
Run Code Online (Sandbox Code Playgroud)
我尝试使用table和tapply,但没有把它弄好.有没有快速的方法来做到这一点?
谢谢!
不像rowMeans()和rowMedians(),这给我们计算出的数字,mode(x)给出了数据的存储模式.
我的问题 - 对于以下数据框,我该如何计算row wise模式?
数据:
Item A B C
Book001 56 32 56
Book002 95 95 20
Book003 50 89 50
Book004 6 65 40
Run Code Online (Sandbox Code Playgroud)
我正在阅读我的工作表:
wk= loadWorkbook (".....xls")
df = readWorksheet (wk, Sheet="Sheet1", header=TRUE)
Run Code Online (Sandbox Code Playgroud) 我有一个data.table res数据如下:
V1 V2 V3 V4
1: Day_1 4 4 4
2: Day_2 1 1 2
3: Day_3 4 5 4
4: Day_4 3 4 4
5: Day_5 3 2 3
Run Code Online (Sandbox Code Playgroud)
我需要从列V2,V3和V4中选择最常用的值.也就是说,我需要选择结果如下:
Day_1 4
Day_2 1
Day_3 4
Day_4 4
Day_5 3
Run Code Online (Sandbox Code Playgroud)
我不期待任何关系,因为总会有奇数列.有可能操纵data.table这样做吗?或者我应该修改一些其他数据类型?
谢谢 - V
例如,我有一个数据集
Data <- data.frame(
groupname = as.factor(sample(c("a", "b", "c"), 10, replace = TRUE)),
someuser = sample(c("x", "y", "z"), 10, replace = TRUE))
groupname someuser
1 a x
2 b y
3 a x
4 a y
5 c z
6 b x
7 b x
8 c x
9 c y
10 c x
Run Code Online (Sandbox Code Playgroud)
如何汇总数据,以便获得:
groupname someuser
a x
b x
c x
Run Code Online (Sandbox Code Playgroud)
这是每个组名最常见的值。
PS:根据我的设置,我只能使用2个包-plyr和lubridate
在R中的向量中,如果我有数据喜欢:
1 1 2 1 1 3 3 1 1
在这种情况下,1是多数.
当然,我可以循环遍历列表并手动计数,但是在R中有更好的方法来查找向量中的主要值吗?
我可以使用table()函数获取分类变量的水平和频率。但是我需要在稍后将最频繁的级别输入到计算中。我怎样才能做到这一点?
例如,我想从分类变量 a 中获取“191”。
> table(a)
a
19 71 98 139 146 185 191
305 75 179 744 1 1980 6760
Run Code Online (Sandbox Code Playgroud) 有一个 data.frame 变量“时间”有重复的值
> data.old
Time Count Direction
1 100000630955 95 1
2 100000637570 5 0
3 100001330144 7 1
4 100001330144 33 1
5 100001331413 39 0
6 100001331413 43 0
7 100001334038 1 1
8 100001357594 50 0
Run Code Online (Sandbox Code Playgroud)
您必须保留所有值不得重复。并将变量“Count”的值与重复值相加,即
> data.new
Time Count Direction
1 100000630955 95 1
2 100000637570 5 0
3 100001330144 40 1
4 100001331413 82 0
5 100001334038 1 1
6 100001357594 50 1
Run Code Online (Sandbox Code Playgroud)
在命令的帮助下我可以找到这些唯一值
> data.old$Time[!duplicated(data.old$Time)]
[1] 100000630955 100000637570 100001330144 100001331413 100001334038 100001357594 …Run Code Online (Sandbox Code Playgroud) r ×11
mode ×3
aggregate ×1
data.table ×1
dplyr ×1
frequency ×1
ggplot2 ×1
histogram ×1
mean ×1
statistics ×1