python - DataFrame 更新未保存到文件
问题描述
我看到这个奇怪的问题,对 DataFrame 所做的更新没有被写入文件。我知道有些行满足条件并且应该更新。也许我错过了一些非常明显的东西,而一双新的眼睛会有所帮助。
prev_date = (datetime.now() - timedelta(days=1)).strftime('%Y-%m-%d')
df = pd.concat([df1, df2], ignore_index=True) # just for prior context in case it matters
df.loc[(df['TBL'].str.contains('abc')) & (df['DT'] == prev_date),'FLAG'] = 'Y' # can't see this update in the outfile csv file written
df.sort_values(by=['TBL']).to_csv('output.csv', index=False)
当我在控制台中读取上面编写的输出文件并在那里重复相同的步骤时,我可以看到更新正在发生。关于我缺少什么的任何线索?
结构df
:
TBL DT FLAG
aab 2020-07-16 Y
abc 2020-07-15 N
abb 2020-07-15 N
更新 1:df['DT'] == prev_date
奇怪的是不工作
更新 2:df['DT'].astype(str) == prev_date
修复了这个问题,但不知道为什么str
当DT
是对象类型时需要强制转换。
解决方案
推荐阅读
- android - 如何通过 FCM 发送 Firestore 时间戳?
- javascript - 使用多个动态图表时Highchart闪烁
- firebase - 在这种情况下,我可以取消关联 Firebase 用户帐户吗?
- sql - SSMS - 寻求帮助编写选择语句以返回 SQL 中的重复项 [包含示例]
- flutter - 如何在展开的 ListView 中设置容器宽度
- python - 小写分隔符 Python 后的第一个字母
- javascript - Vue.js - 使用无效数据调用的函数 DocumentReference.set()。不支持的字段值:未定义
- sql-server - 向 SSIS 包添加简单的脚本任务会显着降低性能吗?
- f# - 在 C# 中,如何获取 F#/Elmish.WPF 对象的类/模块类型?
- javascript - 从选项卡“卸载”时如何重置反应导航?