簡體   English   中英

合並具有多個共同列的數據框

[英]Merging dataframes with multiple columns in common

我有多個 csv 文件對應於我國大學的入學成績,除以年。

每個 csv 文件由 7 列組成:

"Institution Code", "Curse Code", "Institution", "Course", NrVacanciesYear", "NrPlacedYear", "LastGradeYear".

我正在嘗試將 21 個文件(從 1997 年到 2018 年)連接到一個文件中,並按年份連接列。

我正在嘗試使用

dffinal_conc = pd.concat([df18, df17], ignore_index=True)

但我在按“機構代碼”和“課程代碼”分組時遇到問題(注意:來自不同機構的相同課程具有相同的 ID!)

當我嘗試使用它時

dffinal_conc = pd.concat([df18, df17], axis = 1) 

它有點按課程和機構代碼分組,但是當我嘗試使用時,我不知道我是否做得正確

dffinal_conc['Código Curso'].value_counts() 

要驗證 ID 是否只有 1 個值,我收到一個錯誤:

AttributeError: 'DataFrame' object 沒有屬性 'value_counts'"

(注意:我使用dffinal_conc2.loc[:,~dffinal_conc2.columns.duplicated()]刪除重復項)

謝謝您的幫助!

將所有 csv 文件放入一個文件夾並嘗試以下操作:

import os
import pandas as pd
import glob


temp = pd.DataFrame()

path_to_csv = '/folder/of/csvs/' 

csv_pattern = os.path.join(path_to_csv,'*.csv')
file_list = glob.glob(csv_pattern)

for file in file_list:
    df = pd.read_csv(file , header= True)
    temp = temp.append(df, sort = True)

temp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM