我对 Pandas 很陌生(即不到 2 天)。但是,我似乎无法找出将两列与 if/else 条件组合的正确语法。
实际上,我确实想出了一种使用“zip”的方法。这是我想要完成的,但似乎在 pandas 中可能有更有效的方法来做到这一点。
为了完整起见,我包括一些我做的预处理以使事情变得清晰:
records_data = pd.read_csv(open('records.csv'))
## pull out a year from column using a regex
source_years = records_data['source'].map(extract_year_from_source)
## this is what I want to do more efficiently (if its possible)
records_data['year'] = [s if s else y for (s,y) in zip(source_years, records_data['year'])]