想要读取文件夹中多个json文件(文件名为page1,page2,page3...),然后把每个json转换成dataframe(df1/2/3...),最后用concat()把df合并。
想问如果不一个一个进行转换的话,这里应该怎么写成循环啊
with open("C:/Drcom/move/列表页/page1.json", "r", encoding="utf8") as f:
content_1 = json.loads(f.read())
with open("C:/Drcom/move/列表页/page2.json", "r", encoding="utf8") as f:
content_2 = json.loads(f.read())
with open("C:/Drcom/move/列表页/page3.json", "r", encoding="utf8") as f:
content_3 = json.loads(f.read())
df1 = pd.json_normalize(content_1["items"])
df2 = pd.json_normalize(content_2["items"])
df3 = pd.json_normalize(content_3["items"])
使用 Python 的 pandas 库来读取文件夹中的 json 文件,并将其转换为 DataFrame。
import pandas as pd
import os
# 设置文件夹路径
folder_path = 'path/to/your/folder'
# 创建空列表用于存储 DataFrame
df_list = []
# 遍历文件夹中的 json 文件
for file_name in os.listdir(folder_path):
if file_name.endswith('.json'):
file_path = os.path.join(folder_path, file_name)
# 读取 json 文件并转换为 DataFrame
df = pd.read_json(file_path)
df_list.append(df)
# 合并 DataFrame
result_df = pd.concat(df_list)
遍历文件夹中的所有 json 文件,读取每个 json 文件并将其转换为 DataFrame,并将这些 DataFrame 存储在一个列表中。最后使用 pd.concat 函数将所有 DataFrame 合并成一个大的 DataFrame。
你把路径也放到一个list里,写个循环open,不要一个一个open