1樓:Winmin
x=rnorm(1000,0,1)
x1 = sort(x,decreasing = F)for(i in 1:10){
a = x1[(1+(i-1)*100):(i*100)]print(names(table(a))[which.max(table(a))])
2樓:zhuobie
我說乙個比較簡單的辦法。將x1轉化為100 * 10的矩陣,然後按列求出眾數。眾數可以用modeest包中的mfv()函式(most frequent value)求出。
library(modeest)
不過這10個由隨機數構成的列向量出現重複的概率很小,求眾數是沒什麼意義的。
3樓:GYBE
# install.packages('dplyr')library(dplyr)
set.seed(1234)
data <- data.frame(val = rnorm(10000, 0, 1), stringsAsFactors = FALSE)
data <- data %>% arrange(val)data <- data %>% mutate(row = c(1:10000)) %>%
mutate(label = ceiling(row / 100))
4樓:王冠嵩
將乙個向量分組的函式是 split。
x_list
<-split(x
=sort
(rnorm
(x_length,0
,1),decreasing
=FALSE),f
=ceiling
(seq
(x_length)/
bin_size
))不過連續概率分布生成的隨機數,取出的眾數的意義是什麼?
5樓:西門吹水
嚴格來說不是個分組的問題。如果只需要每100個數的mode,寫乙個loop每次抓100個數然後求mode,再用乙個vector裝起來就好了。
container = c()
Iter = c(1:99)
for(i in Iter){
temp = x1[100*(i-1)+1:100*i]container=c(container,mode(temp))手機碼的,沒檢查語法
6樓:stone
# install.packages("data.table")library(data.table)
x <- rnorm(1000, 0, 1)x1 <- sort(x)
y <- data.table(x1, x2 = rep(1:100, each = 10))
# 眾數函式
getmode <- function(v)y[, .(z = getmode(x1)), by = .(x2)]
R語言中資料篩選的問題?
InfiniteCycle 如果題主對SQL比較熟悉的話,在R中用SQL的語句來進行資料處理會極大地提公升工作效率。假設題主的data.frame的名字叫做 df,可以用以下package和語句進行資料篩選 install.packages sqldf manipulate data with sq...
C語言如何將int資料放到double小數部分?
醉臥沙場 不明白為什麼這種也要出來 拜神 給你兩種方法,拿去交作業吧 有心就自己弄明白了再交,要是弄不明白就趁早轉乙個合適的專業 程式 mytest.c include include intmain int argc char argv 編譯,測試執行 gcc o mytest mytest.c ...
r語言中資料框處理變數 獲得連續變數
山海有棗 dataset1 data.frame c1 seq 300,3100,by 200c2 seq 400,4700,by 300 dataset2 data.frame c3 rep seq 300,3000,by 100 times 2 any dataset1 c1 x dataset...