【发布时间】:2020-10-01 15:55:36
【问题描述】:
免责声明:我是 SO 和 Python 的新手。
我正在尝试将我的 SQL 左连接查询转换为 python。
示例:
df1 是一个数据框,其中包含以下列:城市、事件、日期
df2:城市、邮政编码、州、国家等
SQL:
SELECT Events.City, Events.Event, Events.Date, Masterlist.State, Masterlist.Country, Masterlist.[Zip Code]
FROM Events LEFT JOIN Masterlist ON Events.City = Masterlist.City
Python:
df1 = pd.read_csv('Events.csv')
df2 = pd.read_csv('Masterlist.csv')
df3 = df1.join(df2, how='left')
df3 输出:
City, Event, date, Zip Code, State, Country
Fremont, Charity, 6/11, 99999, CA, US
Oakland, Protest, 6/11, 99998, CA, US
Fremont, Concert, 6/12, null, null, null
Oakland, Concert, 6/12, null, null, null
理想的输出是它引用 df2 并返回基于 City 的值。它目前只返回该 City 的第一个找到的值。如何让它为每个行项填充其各自的州、邮政编码和国家/地区?
【问题讨论】: