Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple

加入好友
加入社群
Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

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有四欄(四種長度)

Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

輸出結果(雙層column name):

Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

推薦hahow線上學習python: https://igrape.net/30afN

雙層column name的DF
與Series做橫向(axis=1)合併:

Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

輸出結果:

Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

雙層column name變成單層column name (tuple)

進行連接操作時,索引的對齊非常重要。請確保DataFrame和Series具有相同的索引,以便在連接時能夠正確對應值。

如果DataFrame和Series具有不同的索引,則連接操作將根據索引進行對齊,並在對應的位置上添加缺失值NaN。這可能會導致結果中出現缺失值或錯誤的對應。因此,在進行連接之前,請確保DataFrame和Series的索引是一致的或可以進行對齊的。

推薦hahow線上學習python: https://igrape.net/30afN

加入好友
加入社群
Python: pandas.DataFrame 如何合併? 如何以keys參數建立雙層column name ; pd.concat(dfs, axis=1, keys = dic_name_df.keys() ) ;雙層column name的DF與Series或單層column name的DF做橫向(axis=1)合併會如何? 雙層column name被壓縮成單層的tuple - 儲蓄保險王

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡

You may also like...

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *