gpt4 book ai didi

python - 在 Python 中循环 json 文件

转载 作者:太空宇宙 更新时间:2023-11-04 07:17:29 28 4
gpt4 key购买 nike

我有 10 个名为 Herald500_2005Herald500_2006.... Herald500_2015 的 json 文件。我试图在每个文件中进行相同的关键字词搜索。我不想一个一个地做,而是希望能够循环进行。到目前为止,我已经尝试了以下代码:

for i in range(5,15):
df = pandas.DataFrame([json.loads(l) for l in open('Herald500_200i.json')])
# Parse dates and set index
df.date = pandas.to_datetime(df.date)
df.set_index('date', inplace=True)
# match keywords
matchingbodies = df[df.body.str.contains("|".join(keywords3))&df.body.str.contains("|".join(keywords2))&df.body.str.contains("|".join(keywords1))].body
# Count by month
counts = matchingbodies.groupby(lambda x: x.month).agg(len)

print "TH 200i"
print counts

通过运行此代码,我收到以下错误:

<ipython-input-9-76f2d2649df0> in <module>()
1 for i in range(5,15):
----> 2 df = pandas.DataFrame([json.loads(l) for l in open('Herald500_200i.json')])
3 # Parse dates and set index
4 df.date = pandas.to_datetime(df.date)
5 df.set_index('date', inplace=True)

IOError: [Errno 2] No such file or directory: 'Herald500_200i.json'

知道如何更正代码吗?

亲切的问候

最佳答案

您应该使用字符串格式化i 值放入字符串中:

open('Herald500_200%d.json' % i) 

或者:

open('Herald500_200{0}.json'.format(i)) 

或者,由于这些是,为了简化前导零格式化问题的处理,直接循环这些年:

for year in range(2005, 2016):  # note the 2016 here - the upper bound is non-inclusive
df = pandas.DataFrame([json.loads(l) for l in open('Herald500_%d.json' % year)])

关于python - 在 Python 中循环 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35992695/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com