Python 在Pandas中选择数据子集

Python 在Pandas中选择数据子集,python,pandas,dataframe,header,Python,Pandas,Dataframe,Header,我有一个包含5行×1317列的数据集。附件:您可以查看数据集的外观。标题包含波长的数字。但是,我只想选择特定波长范围内的列。 我感兴趣的波长数存储在一个大小为1×235的数组c中。 如何根据存储在c中的波长值提取所需的列 如果数组c中的值也是一个列标题,也就是说,c没有任何附加值,那么您可以将其设置为一个列表并使用df[c],其中c是该列表 例如,使用当前图片中显示的内容,您可以执行以下操作: l=[102105]我假设df中的列标题是整数,而不是字符串 df[l] 这将显示这两列。如果希望它出

我有一个包含5行×1317列的数据集。附件:您可以查看数据集的外观。标题包含波长的数字。但是,我只想选择特定波长范围内的列。 我感兴趣的波长数存储在一个大小为1×235的数组c中。 如何根据存储在c中的波长值提取所需的列

如果数组c中的值也是一个列标题,也就是说,c没有任何附加值,那么您可以将其设置为一个列表并使用df[c],其中c是该列表

例如,使用当前图片中显示的内容,您可以执行以下操作:

l=[102105]我假设df中的列标题是整数,而不是字符串 df[l] 这将显示这两列。如果希望它出现在某个新的dataframe中,那么执行类似于df2=pandas.Dataframedf[l]的操作,如果lwas为5列,它将显示这5列。因此,如果您可以传入arrayc,或者将其放入列表中,可能是通过l=listc`,您将得到您的列

如果数组中的其他值不一定是dataframe中的列,则需要仅为这些列创建一个子列表

sub_c=list创建一个我们将添加到的空白列表 c_list=listc 对于df.columns中的列: c_列表中的if列:sub_c.appendcolumn df[sub_c] 这将使子列表中的值仅为列标题,因此您希望尝试查看不存在的列

请记住,您需要在c数组和列标题之间匹配数据类型