使用“ loc”选择多个列

时间:2019-03-28 20:40:52

标签: python pandas

我有一个新闻数据集,其中包含3列:lead_paragraph_idweb_url

以下代码返回与id {news lead_paragraph匹配的行。

ds = pd.read_csv("nytimes.csv")
def item(id):
    return ds.loc[ds['_id'] == id]['lead_paragraph'].tolist()[0]

如何通过列表中的web_url也获得lead_paragraph

尝试一种解决方案后出现错误

return ds.loc[ds['_id'] == id], ['web_url', 'lead_paragraph']].tolist()
                                                             ^
SyntaxError: invalid syntax

1 个答案:

答案 0 :(得分:1)

使用df.loc[row indexer, columns indexer]

df.loc[df['_id'] == id, ['web_url', 'lead_paragraph']].values[0].tolist()

其中行索引器是布尔序列,而列索引器是列标签列表。