簡體   English   中英

自動將多個json文件(具有不同的信息)讀取並保存到不同的pandas數據幀

[英]Automate the read and save of several json files (with different information) to different pandas dataframes

我在一個文件夾中有幾個json文件,每個文件都有不同的形狀(行數和列數)和信息。

我有以下代碼打開並將json文件保存到pandas df:

with open('f_fruit.json', 'r') as f:
    data = json.load(f)

df_fruit = pd.DataFrame(data['fruit'])

最后,我想擁有不同的pandas數據框,每個json文件一個:

df_fruit

df_clothes

df_games

考慮到文件名和信息不遵循模式,自動執行此代碼的最佳方法是什么? 可能嗎?

假設您的文件使用相同的邏輯命名,我將執行以下操作:

files = ['f_fruit.json','f_clothes.json','f_games.json'] #you can use os.walk to get a list of files from a specific folder

for file_name in files:
    col_name = file_name.split('.')[0][2:]
    with open(file_name, 'r') as f:
        data = json.load(f)
    var_name = 'df_{}'.format(col_name)
    globals()[var_name] = pd.DataFrame(data[col_name])

但是,如果

文件名和信息不遵循模式

那么就沒有自動化的自動化方法。 您需要一個模式。

在這里,您可能感興趣的部分,即如何使用globals()從內存中已有的值創建變量。

>>> col_name = 'fruit'
>>> var_name = 'df_{}'.format(col_name)
>>> globals()[var_name] = 'some value'
>>> df_fruit
'some value'

暫無
暫無

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

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