如何在Mathematica中提取含特定字符串的数据集行?
提取数据集包含特定字符串的行
下面是两种常用的正确实现方式(假设你用的是R语言):
基础R写法
直接用grepl()生成筛选条件,配合数据框索引实现行筛选:
# 筛选CountryExp列包含"Germany"的所有行,保留全部列 monkeypox[grepl("Germany", monkeypox$CountryExp), ]
逻辑说明:grepl("Germany", monkeypox$CountryExp)会生成一个布尔向量,对应每行的CountryExp列是否包含目标字符串;方括号中前半部分是行筛选条件,后半部分留空表示保留所有列。
tidyverse/dplyr写法
如果你习惯用tidyverse生态,可以用dplyr的filter()配合stringr的str_detect():
library(dplyr) library(stringr) # 筛选后保存为新数据集 monkeypox_filtered <- monkeypox %>% filter(str_detect(CountryExp, "Germany"))
错误代码说明
你之前写的monkeypox[All, "Germany"]逻辑错误:All不是R的合法内置对象,且这种写法是试图提取名为"Germany"的列,而非筛选符合条件的行。
内容的提问来源于stack exchange,提问作者user13170084
相关产品推荐
相关产品推荐

