【发布时间】:2018-02-13 12:16:50
【问题描述】:
我有一个逗号分隔的 csv 文件,包含三列:
"Date", "URL", "Views"
我正在尝试在URL 列中提取包含特定关键字的某些行,例如单词charger。
import pandas as pd
keywords = {"charger"}
df = pd.read_csv("original_file.csv", sep=",")
listMatchURL = []
for i in range(len(df.index)):
if any(x in df['URL'][i] for x in keywords):
listMatchURL.append(df['URL'][i])
output = pd.DataFrame({'URL': listMatchURL})
output.to_csv("new_file.csv", index=False)
这会将包含关键字的整个 URL 行写入一个新的 csv 文件。但是如何只提取和写入关键字,而不是整个 URL?我不想提取整个http://www.example.com/search/iphone+charger.html,而只是提取charger。
另外,如何在我正在编写的新 csv 文件中保留另外两个对应的列 Date 和 Views?目前,它仅提取 URL 列。
我正在寻找一个包含以下列的新 csv 文件:
"Date", "Keyword", "Views"
【问题讨论】:
标签: python pandas csv extract keyword