小编Nir*_*rke的帖子

R将矩阵转换为列表

我有一个大矩阵

> str(distMatrix)
 num [1:551, 1:551] 0 6 5 Inf 5 ...
 - attr(*, "dimnames")=List of 2
  ..$ : chr [1:551] "+" "ABRAHAM" "ACTS" "ADVANCE" ...
  ..$ : chr [1:551] "+" "ABRAHAM" "ACTS" "ADVANCE" ...
Run Code Online (Sandbox Code Playgroud)

其中包含数值.我需要将所有数值收集到一个长列表中(用于获取分配).目前我所拥有的:

for(i in 1:dim(distMatrix)[[1]]){
    for (j in 1:1:dim(distMatrix)[[1]]){
      distances[length(distances)+1] <- distMatrix[i,j]
    }  
  }
Run Code Online (Sandbox Code Playgroud)

但是,这需要永远.有谁能建议更快的方式?

r matrix dataframe

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

字符串之后/之前的R正则表达式提取数字

我正在尝试构造一个正则表达式来识别字符串,其中工作"pack"/"pck"/"包"/"设置"(不区分大小写),如果是(字存在),则提取此单词之前或之后的数字.例子:

"Fregon EcoClean Multipurpose Scrubber For Pots, Pans, Kitchen, and Bathroom, Green, 3-Pack" -> 3
Bathroom, Green, 3 Pack" -> 3
"Franklin Sports NHL Mini Hockey Goal Set of 2" ->2
"Make: Electronics Components Pack 2" -> 2
"Make: Electronics Components Pack of 2 -> 2
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下表达式:

sub(".*pack(\\d+).*", "\\1", "inflow100 pack6 distance12")
Run Code Online (Sandbox Code Playgroud)

但是,它不符合上述所有情况.有任何想法吗?

regex r

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

R 检查 TRUE/FALSE 值列表是否评估为 TRUE

我对 R 比较陌生,如果这是基础知识,我很抱歉。我有这个循环,里面有一个条件,可以在 2 个列表之间进行比较,并返回一个 TRUE/FALSE 值向量。我真正需要检查的是这个向量是否只包含 TRUE 值(意味着 2 个列表是相同的)

for ( i in 1:(length(sessions_items_list)-1)){
  if (sessions_items_list[[i]]==sessions_items_list[[i+1]]){
    identical_sessions_df [i,1] <- names(sessions_items_list[i])
    identical_sessions_df [i,2] <- names(sessions_items_list[i+1])
    #identical_sessions_df [i,3] <- sessions_items_list[[i]]
    #identical_sessions_df [i,4] <- sessions_items_list[[i+1]]
  }
}
Run Code Online (Sandbox Code Playgroud)

这是一些数据:

> sessions_items_list[[2]]
 [1] "111502665618" "111505397996" "121238758674" "121480200508" "131159477858" "161469302097" "161474935929" "171526802604" "231197187139" "231381216285" "251502101205" "261650031415"
[13] "261652085962" "261652452940" "271538491767" "281398254987" "291227243345" "311065441334" "321561638226" "321566237993" "331042848072" "331251405185" "331366646532" "361096154736"
[25] "381043841996"
> sessions_items_list[[3]]
 [1] "111502665618" "111505397996" "121238758674" "131159477858" "161469302097" "161474935929" "171526802604" "231197187139" "231381216285" "251502101205" …
Run Code Online (Sandbox Code Playgroud)

r predicate list vector

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

标签 统计

r ×3

dataframe ×1

list ×1

matrix ×1

predicate ×1

regex ×1

vector ×1