pandas官網說明:
keys : sequence, default None
If multiple levels passed, should contain tuples.
Construct hierarchical(分層的) index using the passed keys as the outermost level.
code:
import pandas as pd
from typing import Dict
dic_name_df:Dict[str,pd.DataFrame] = {
'UFA125A': pd.DataFrame({
'Length_1': [3.103559, 3.136321, 3.168799, ...],
'Length_2': [2.84988, 2.84988, 2.84988, ...],
'Length_3': [4.8768, 4.8768, 4.8768, ...],
'Length_4': [0.27661, 0.279529, 0.282424, ...]
}),
'UED240E': pd.DataFrame({
'Length_1': [2.046695, 2.070632, 2.094404, ...],
'Length_2': [2.74828, 2.74828, 2.74828, ...],
'Length_3': [4.8768, 4.8768, 4.8768, ...],
'Length_4': [0.182415, 0.184548, 0.186667, ...]
})
}
dfs = list(dic_name_df.values()) #長度2 #List[pd.DataFrame]
df_combined = pd.concat(dfs, axis=1, keys=dic_name_df.keys())
#dic_name_df.keys()長度也是2
pd.set_option("display.max_columns",None)
print(df_combined)
dic_name_df: Dict[str, pd.DataFrame]
key為兩個cable name
value為兩個DF,
每一個DF有四欄(四種長度)
輸出結果(雙層column name):
推薦hahow線上學習python: https://igrape.net/30afN
雙層column name的DF
與Series做橫向(axis=1)合併:
輸出結果:
雙層column name變成單層column name (tuple)
進行連接操作時,索引的對齊非常重要。請確保DataFrame和Series具有相同的索引,以便在連接時能夠正確對應值。
如果DataFrame和Series具有不同的索引,則連接操作將根據索引進行對齊,並在對應的位置上添加缺失值NaN。這可能會導致結果中出現缺失值或錯誤的對應。因此,在進行連接之前,請確保DataFrame和Series的索引是一致的或可以進行對齊的。
推薦hahow線上學習python: https://igrape.net/30afN