【发布时间】:2019-05-26 00:07:27
【问题描述】:
我目前正在尝试查找包含至少一个键值列表的 csv 的所有行。这是我目前的方法:
name_index = []
basics = pd.read_csv('name.basics.csv')
basics_unprocessed = pd.read_csv('name.basics.csv')
for i,ID in enumerate(movie_title_ids):
ind = tuple(basics_unprocessed.loc[basics_unprocessed['knownForTitles'].str.contains(ID)].index)
name_index.extend(ind)
try:
basics_unprocessed.drop(ind[0], inplace=True)
except:
print('drop failed')
if i%100 == 0:
print(i)
这里的想法是name_index 列表将包含所有索引,这些索引至少包含一个指定的 ID 键值。
理想情况下,这段代码可以满足我的需要,但它会花费很长时间,因为 ID 列表的大小为数千,而 csv 文件有几百万行。我并没有真正使用大数据工具,但如果它对我有帮助,我愿意学习一些东西。关于使我的代码更高效或其他工具的任何建议(我的朋友建议使用 spark 或其他工具可能会有所帮助)
【问题讨论】:
-
或许可以向minimal reproducible example 提供一些数据,这些数据可以清楚地说明您要完成的工作?
标签: python-3.x pandas