使用 python 和 pandas 转换镶木地板文件中目录中的 json 文件



我正在努力将本地json文件转换为parquet文件。每个文件都应该用pandas转换为一个parquet文件并保存它,这样我就有了相同数量的文件,就像parquet一样。

我循环遍历我的目录,并成为我所有现有json文件的列表,并将它们放入pandas数据框架中。

path = 'trackingdata/'
df = list()
for root, dirs, files in os.walk(path, topdown=False):
for name in files:
df.append(os.path.join(root, name))
df = pd.DataFrame(df)     

现在循环遍历数据框架并使用

转换每个文件是否更好?
df.to_parquet('trackingdata.parquet')

还是在遍历dir之后将转换写入上面的代码中更好?我怎样才能把每个文件都转换成拼花而不把它们拼接在一起呢?

如何定义一个json_to_parquet转换器:

def json_to_parquet(filepath):
df = pd.read_json(filepath, typ='series').to_frame("name")
parquet_file = filepath.split(".")[0] + ".parquet"
df.to_parquet(parquet_file)

根据你的json格式,你可能需要改变read_json行和/或使用这里的提示

然后每次只处理一个文件:

path = 'trackingdata/'
for root, dirs, files in os.walk(path, topdown=False):
for name in files:
json_to_parquet(os.path.join(root, name))

最新更新