Python提取动态数量的列

时间:2017-07-28 15:49:42

标签: python python-3.x pandas dataframe

我想知道如何最好地解决这个问题。我有2个数据帧:

df1
       3        4       5         6   
0    NaN      NaN     Sea       NaN
1  light   medium   light    medium
2     26     41.5      15        14
3     32       40      18        29 
4     41       29      19        42

df2
       3       4       5       6         7            8
0    NaN     NaN      NaN        Sea       NaN      NaN
1  light  medium    heavy      light    medium    heavy
2     26    41.5       21         15        14       29
3     32      40       19         18        29       31
4     41      29       18         19        42       35

而我正试图孤立海洋'列范围如下:

df1
        5        6   
0     Sea      NaN
1   light   medium
2      15       14
3      18       29 
4      19       42

df2
      6         7         8
0      Sea      NaN         NaN
1    light   medium       heavy
2       15       14          29
3       18       29          31
4       19       42          35

我最初的想法是以某种方式删除' light'的第一列实例。和'' medium'或者' light' '介质' '重&#39 ;.但是,我不太清楚如何实现这一目标。如果有人有更好的想法/解决方案,请随时告诉我。我为缺乏尝试而道歉,但我真的不知道如何处理这个问题

1 个答案:

答案 0 :(得分:0)

好的,这是我动态做的答案。可能不是最快的

for col in df1:
    if df1.loc[0,col] == 'Sea':
        break
    else:
        del df1[col]

然后你可以为第二个Dataframe做同样的事情