Python 基于包含字符串的列(2个定义的条件),从另一个数据帧创建数据帧
我正在尝试将df1中的一些列编译为新的数据帧df2 将根据以下条件选择列:Python 基于包含字符串的列(2个定义的条件),从另一个数据帧创建数据帧,python,pandas,Python,Pandas,我正在尝试将df1中的一些列编译为新的数据帧df2 将根据以下条件选择列: 如果列中有“坐标”一词 如果列中有单词“ID” 以下是我尝试的代码: df1 = pd.read_csv(csvpath) #table as below cols = [col for col in df1.columns if 'Coordinates' and 'ID' in col] df2=df1[cols] 但是,这些条件仅应用于cols=(在本例中,仅提取ID并忽略坐标)中的最后一项 我如何编辑上面
df1 = pd.read_csv(csvpath) #table as below
cols = [col for col in df1.columns if 'Coordinates' and 'ID' in col]
df2=df1[cols]
但是,这些条件仅应用于cols=(在本例中,仅提取ID并忽略坐标)中的最后一项
我如何编辑上面的代码以同时包含坐标和ID(我可以删除不需要的列,但是我处理的数据集很大,因此我需要以类似于我上面定义的方式进行操作)
非常感谢你在这方面的帮助
原始表格(df1)
所需输出(df2)
我认为这应该行得通
cols = [col for col in df1.columns if 'Coordinates' in col or 'ID' in col]
我试过了,它需要整个df。还有其他建议吗?你确定吗,我只是在我的电脑上用和你相同的列名试过了,效果很好