查找标点符号后包含字符串的列名称
Find column name containing a string after a punctuation
我有一个与 Find column whose name contains a specific string 类似的问题,但有一个扩展。
我有一个包含列名的数据框,我想在下划线符号后找到包含特定字符串的数据框。
例如,我在 'mango_man'、'man_mango'、'apple_mango' 等列名称中搜索 mango,但仅当它出现在“_”之后时。这种情况下的结果只会 return 'man_mango', 'apple_mango'
要return编辑为字符串或变量的列名称。
你可以给出这个来查明列中是否存在 mango_ 或 _mango。
这将检查之前和之后。如果你想在之后明确检查,那么你可以给出 if '_mango' in col
df = pd.DataFrame(np.random.randint(0,10,(3,7)),
columns = ['man','man_mango','mango_man','mango','mangoman','manmango','man mango'])
print (df)
mango_cols = [col for col in df.columns if any(x in col for x in ['mango_','_mango'])]
print (mango_cols)
这个输出将是:
['man_mango', 'mango_man']
要明确地只获取 _mango
之后的值,您可以给出:
cols = [col for col in df.columns if '_mango' in col]
这个输出将是:
['man_mango']
要获取数据框 df
中下划线 _
后包含 mango
的结果列表,您可以执行
mango_list = [word for word in df.columns if '_mango' in word]
或
mango_list = [word for word in df.columns if word.split("_")[1]=="mango"]
我有一个与 Find column whose name contains a specific string 类似的问题,但有一个扩展。
我有一个包含列名的数据框,我想在下划线符号后找到包含特定字符串的数据框。
例如,我在 'mango_man'、'man_mango'、'apple_mango' 等列名称中搜索 mango,但仅当它出现在“_”之后时。这种情况下的结果只会 return 'man_mango', 'apple_mango'
要return编辑为字符串或变量的列名称。
你可以给出这个来查明列中是否存在 mango_ 或 _mango。
这将检查之前和之后。如果你想在之后明确检查,那么你可以给出 if '_mango' in col
df = pd.DataFrame(np.random.randint(0,10,(3,7)),
columns = ['man','man_mango','mango_man','mango','mangoman','manmango','man mango'])
print (df)
mango_cols = [col for col in df.columns if any(x in col for x in ['mango_','_mango'])]
print (mango_cols)
这个输出将是:
['man_mango', 'mango_man']
要明确地只获取 _mango
之后的值,您可以给出:
cols = [col for col in df.columns if '_mango' in col]
这个输出将是:
['man_mango']
要获取数据框 df
中下划线 _
后包含 mango
的结果列表,您可以执行
mango_list = [word for word in df.columns if '_mango' in word]
或
mango_list = [word for word in df.columns if word.split("_")[1]=="mango"]