首页 > 解决方案 > 如何使用 json 文件中的“时间戳”将 DataFrame 设置为从 X 日到 Y 日,而不是从 X 年到 Y 年?

问题描述

我想对不同的 json 文件做一些文本分析。这些文件被命名为例如“2017.json”或“2018.json”。

它们包含许多文本,每个文本都有一个时间戳。(例如“时间戳”:“2019-01-31T19:15:00”,)

pandas的基本结构就是所谓的DataFrame。我首先创建了一个 DataFrame,然后将各个年份(这里只有一年)的数据附加到它上面。这确保了数据在相同的结构中都是可用的。

现在我只能用个别年份创建 DataFrame。是否可以使用文件中的时间戳来创建 DataFrame,例如从第 x 天到第 y 天?

import pandas as pd

data = pd.DataFrame()

#json file 2017
for year in range (2017,2018):
    data = pd.concat([data, pd.read_json("%d.json" % year, orient="records")], ignore_index=True)

标签: pythonjsonpandas

解决方案


如果您知道特定范围,则可以过滤这些特定日期的数据框,并从中获取新的数据框。

filtered_df = df[(df['date'] > 'from date') & (df['date'] < 'to date')]

然后您可以保存在文件名中提及 from & to 范围的过滤后的_df


推荐阅读