Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将for循环与元字符相结合_R - Fatal编程技术网

将for循环与元字符相结合

将for循环与元字符相结合,r,R,我正在编写一个for循环,用于检查特定列中的值是否与预定义列表匹配 所以有点像这样: money <- read.csv2("money.csv", header = T) #set counter count_financial = 1 #set list financial_items <- c("bank", "ABN Amro") for (i in 1:nrow(money)) { if(money$Description[i] in financial

我正在编写一个for循环,用于检查特定列中的值是否与预定义列表匹配

所以有点像这样:

 money <- read.csv2("money.csv", header = T)
 #set counter
 count_financial = 1

 #set list
 financial_items <- c("bank", "ABN Amro")

 for (i in 1:nrow(money)) {
  if(money$Description[i] in financial_items ) {
   count_financial = count_financial + 1
  }
 }
钱你可以试试

filtered <- money[grep("bank|ABN Amro",money$Description,ignore.case=TRUE),]
count_financial <- nrow(filtered)
过滤尝试:

但如果您打算使用循环:

for (i in 1:nrow(money)) {
  if(money$Description[i] %in% financial_items ) {
   count_financial = count_financial + 1
  }
 }
更新:

重新阅读问题后,我认为您正在寻找:

length(grep("bank|abn amro", money$Description, ignore.case=TRUE))
length(grep("bank|abn amro", money$Description, ignore.case=TRUE))