如何創建大小爲[40 2]
的固定大小數據框,用唯一字符串聲明第一列,然後用特定值填充另一列?再次,我想第一列是字符串列表;我不想 想要一排標題。創建數據框並填充它R
(有人請給我一些指點。我沒有計劃中的R了一段時間,我的[R技能是可怕的 開始。)
如何創建大小爲[40 2]
的固定大小數據框,用唯一字符串聲明第一列,然後用特定值填充另一列?再次,我想第一列是字符串列表;我不想 想要一排標題。創建數據框並填充它R
(有人請給我一些指點。我沒有計劃中的R了一段時間,我的[R技能是可怕的 開始。)
兩種方法:
# sequential strings
library(stringr)
df.1 <- data.frame(id=paste0("X",str_pad(1:40,2,"left","0")),value=NA)
head(df.1)
# id value
# 1 X01 NA
# 2 X02 NA
# 3 X03 NA
# 4 X04 NA
# 5 X05 NA
# 6 X06 NA
第二種方法:
# random strings
rstr <- function(n,k){
sapply(1:n,function(i){do.call(paste0,as.list(sample(letters,k,replace=T)))})
}
set.seed(1)
df.2 <- data.frame(id=rstr(40,5),value=NA)
head(df.2)
# id value
# 1 gjoxf NA
# 2 xyrqb NA
# 3 ferju NA
# 4 mszju NA
# 5 yfqdg NA
# 6 kajwi NA
功能rstr(n,k)
產生一個長度爲n的矢量其中每個元素的長度爲k的隨機字符的字符串。 rstr(...)
並不保證所有字符串都是唯一的,但重複的概率是O(n/26^k)
。
exampledf <- data.frame(columnofstrings=c("a string", "another", "yetanother"),
columnofvalues=c(2,3,5))
給
> exampledf
columnofstrings columnofvalues
1 a string 2
2 another 3
3 yetanother 5
那麼,我不想填充右側。我只想要一個帶有第一列名稱的數據框。 – Dombey
你想在你的數據框中使用什麼字符串和值? – josliber
爲什麼倒票? – Dombey