Разверните ячейки, содержащие 2D-массивы, в их собственные переменные в Pandas - PullRequest
0 голосов
/ 25 июня 2019

Мой фрейм данных выглядит так

 TeamA   TeamB 
 [a,b]   [[b,c],[d,c],[d,f] .....upto 15  such arrays]
 [b,c]   [[v,c],[e,c],[g,f] .....upto 15  such arrays]

TeamB имеет 15 наборов записей в каждой строке.

Я хочу, чтобы это выглядело

 TeamA   Team0 Team1  Team2 ...... 
 [a,b]   [b,c] [d,c]  [d,f]] ......
 [b,c]   [v,c] [e,c]  [g,f] .....

Для 1D я могу использовать

newcol = df['TeamB '].apply(pd.Series)
newcol = newcol.rename(columns = lambda x : 'Team_' + str(x))
pd.concat([df[:], newcol [:]], axis=1)

Как я могу сделать это с 2D-массивами.

Вот мой df.head (5) .to_dict (). В этом случае я взял только 2 массива в строке в TeamB

{'TeamA   ': {0: array([ 35.82, -95.67]),
  1: array([ 36.27, -95.91]),
  2: array([ 35.99 , -95.88]),
  3: array([ 36.18, -96.40]),
  4: array([ 35.99 , -95.90])},
 'TeamB': {0: array([[ 35.74  , -95.36],
         [ 36.19 , -95.92]]),
  1: array([[ 35.82, -95.67],
         [ 35.98 , -95.81 ]]),
  2: array([[ 36.27, -95.91],
         [ 36.08 , -95.96 ]]),
  3: array([[ 35.99 , -95.88],
         [ 35.75 , -95.34]]),
  4: array([[ 36.18, -96.40],
         [ 36.07 , -95.89 ]])}} 

1 Ответ

0 голосов
/ 25 июня 2019

Я разобрался в золе. мы можем использовать from_records

    pd.DataFrame.from_records(df['TeamB'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...