[英]Fill dataframe row-whise from a list, where every nth values begins a new row
希望你能幫助我。
我創建了一個包含 25 列的 dataframe,到目前為止行都是空的。
column_name = df[0].values.tolist()[0:25]
column_name
['Time:',
'\tDC_Verbrauch:',
'\tDC_Verbrauch_Ueberlauf:',
'\tHVEM_IstLeistungNA:',
'\tHVLM_Restladezeit_HV_Bat_02:',
'\tHVLM_Bat_laden_aktiv:',
'\tHVLM_Ladeart:',
'\tHVLM_Stecker_Status:',
'\tKBI_angez_Geschw:',
'\tKBI_Inhalt_Tank:',
'\tKBI_Aussen_Temp_gef:',
'\tMO_KVS:',
'\tMO_KVS_Ueberlauf:',
'\tMO_Verbrauch_EM_Ges:',
...
然后刪除 \t 並將這些 25 個值的列表作為空 dataframe 的列名。
現在我有一個包含 16350 個值的列表。
每第 25 個值應開始一個新行。 這意味着我稍后將有 654 行和 25 個填充列。 所以從列表形狀 (16350,1) 到 dataframe (654,25)
values
['1654786811.282628',
'786Unit_WattSecond',
'0',
'13700Unit_Watt',
'1370Unit_Minut',
'0',
'2',
'2',
...
'1810Unit_WattSecond',
'0',
'1654786811.381790',
'83Unit_WattSecond',
'1',
'4150Unit_Watt',
'415Unit_Minut',
'1',
'3',
'3',
'26.56Unit_KiloMeterPerHour',
第一行的開頭是'1654786811.282628' - 第二行的開頭: '1654786811.381790'
因此,我需要從一個值列表中逐行填充 dataframe。
最好的問候thaclone
您可以使用 numpy.reshape 來實現。
查看更簡單的 3 列數據:
data = [ "Tom", 32, 85, "Jerry", 35, 50, "Mickey", 40, 10, "Mouse", 20, 12 ]
pd.DataFrame(np.array(data).reshape(4,3), columns = ["name", "age", "height"])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.