Серия: оптимизация динамического переноса - PullRequest
1 голос
/ 21 октября 2019

Я хотел бы преобразовать серию Pandas в транспонированный Dataframe, где число ключей / значений является динамическим. Затем у транспонированного Dataframe также должно быть динамическое число столбцов.

Мне удалось использовать методы to_frame () и to_transpose (), но я хотел бы оптимизировать свой код. Точнее, мне нужно использовать метод reset_index (), а затем отбросить созданный «индекс» столбец, который бесполезен ... Я предположил, что это может быть лучше достигнуто.

Пожалуйста, найдите мой текущий код:

current_case_details = row.to_frame().transpose().reset_index()
current_case_details.drop(columns=['index'], inplace=True)
print("CURRENT CASE DETAILS:\n{0}\n".format(current_case_details))

Пожалуйста, найдите иллюстрацию ожидаемого результата: изображение ожидаемого результата

Есть ли у вас какое-либо решение для оптимизации моего кода, используя "стандартные" методы / опции серии / панелей данных Pandas?

Спасибо за помощь:)

1 Ответ

1 голос
/ 21 октября 2019

Использование DataFrame.transpose + DataFrame.set_index :

new_df=serie.to_frame().T.reset_index(drop=True)

Пример:

serie=pd.Series([1,2,3,'AA'],['c1','c2','c3','c4'],name='Value')
print(serie)

c1     1
c2     2
c3     3
c4    AA
Name: Value, dtype: object

new_df=serie.to_frame().T.reset_index(drop=True)
print(new_df)

  c1 c2 c3  c4
0  1  2  3  AA 
...