我的目标是根据子字符串将存储为DataFrame df1的数据导入到sheet1中。
我的DataFrame如下所示:
df:[2 x 8]
ordercode quantity
PMC11-AA1L1FAVWJA 20
PMC21-AA1A1CBVXJA 10
PMP11-AA1L1FAWJJ 5
PMP21-AA1A1FBWJJ 3
PMP23-AA1A1FA3EJ+JA 1
PTP31B-AA3D1HGBVXJ 1
PTC31B-AA3D1CGBWBJA 2
PTP33B-AA3D1HGB1JJ 10但是我想要的结果应该是
Sheet2_df2:"1C"
ordercode quantity
PMC21-AA1A1CBVXJA 10
PTC31B-AA3D1CGBWBJA 2
Sheet3_df3:"1F"
PMP11-AA1L1FAWJJ 5
PMP21-AA1A1FBWJJ 3
PMC11-AA1L1FAVWJA 20在excel中,只需创建一个条件和使用IF函数即可轻松实现。B1:"1C“
=IF(Sheet1!A2=$B$1,Sheet1!A2,"")并且可以复制到所有单元。
我不知道如何在python中执行此操作。任何解决方案都将不胜感激。
发布于 2018-09-05 19:14:31
首先将数据读取到Pandas数据帧中:
df = pd.read_excel('file.xlsx')然后在pd.Series.str.contains中使用字典理解
substrings = ['1C', '1F']
d = {x: df[df['ordercode'].str.contains(x, na=False, regex=False)] for x in substrings]然后,您可以通过子串密钥访问数据帧,例如d['1C']。如果愿意,可以将字典中的每个值导出到单独的工作表或工作簿。例如:
for k, v in d.items():
v.to_excel(f'{k}.xlsx', index=False)https://stackoverflow.com/questions/52182051
复制相似问题