Множественный фрейм данных из dataframe python

#python #python-3.x #pandas

#python #python-3.x #панды

Вопрос:

У меня есть фрейм данных, как показано ниже, из файла csv:

 aa      |bb     |cc     |dd
1       |2      |3      |4
aa      |bb     |cc     |dd
3       |5      |8      |7
xx      |yy     |zz     |ww
1       |2      |3      |4
xx      |yy     |zz     |ww
2       |4      |5      |6

  

Могу ли я превратить его в несколько фреймов данных, как показано ниже:

 dataframe name = aa

column_name:    aa      |bb     |cc     |dd
                1       |2      |3      |4
                3       |5      |8      |7

dataframe name = xx

column_name:    xx      |yy     |zz     |ww
                1       |2      |3      |4
                2       |4      |5      |6
  

Комментарии:

1. Должно быть намного проще написать скрипт на python для исправления файла csv (например, разделить его на два файла, один для aa, bb, cc, а другие для xx, yy, zz), а затем выполнить это в pandas

Ответ №1:

Я бы предложил что-то вроде этого:

 df['aa']= df['a'].shift(-1)
df['bb']= df['b'].shift(-1)
df['cc']= df['c'].shift(-1)
df['dd']= df['d'].shift(-1)

df.drop(range(1,len(df),2))
aa=df[lambda x: x['a']=='aa'].drop(['a','b','c','d'],axis=1)
xx=df[lambda x: x['a']=='xx'].drop(['a','b','c','d'],axis=1)
xx.columns= ['xx','yy','zz','ww']