Транспонируйте и сохраните фрейм данных pandas с одним столбцом

#python #pandas #dataframe #transpose

Вопрос:

Я удалил все, кроме одной строки фрейма данных pandas, и pandas автоматически переместил его. Затем я пытаюсь перенести его обратно (и в конечном итоге хочу сохранить его в формате .csv) безрезультатно.

В конечном итоге я хочу иметь:

 df3: col1 col2 col3  2 7 5  

вместо

 df3: col1 2 col2 7 col3 5  

и в файле save .csv я хочу иметь:

 ,col1,col2,col3 1,2,7,5  
 ,1 col1,2 col2,7 col3,5  

Вот сценарий:

 import pandas as pd d1 = {  'col1': [1, 2],   'col2': [4, 7],   'col3': [8, 5],   } df1 = pd.DataFrame(data=d1) df2 = df1.loc[df1.loc[:,"col2"].idxmax(),:] df3 = df2.transpose() # df2.That print(df1) print(df2) print("df3:") print(df3) df3.to_csv("df3.csv")  

Ответ №1:

В вашем случае сделайте to_frame

 df3.to_frame().T  

Ответ №2:

Вы можете использовать:

 df1[df1.index == df1['col2'].idxmax()]  

или чтобы сохранить свою логику:

 df1.loc[df1['col2'].idxmax()].to_frame().T  

выход:

 col1 col2 col3 1 2 7 5