我正在尝试从熊猫数据帧写入AWS红移:
df_tmp_rpt = pd.read_csv('path')
df_tmp_rpt = df_tmp_rpt[df_tmp_rpt['COL'] == 'VALUE']
df_tmp_rpt = df_tmp_rpt.replace(np.nan, null, regex=True)
records = df_tmp_rpt.to_records(index=False)
for record in records:
script_insert = ScriptReader.get_script(SCRIPT_PATH).format(record)
RedshiftDataManager.run_update(script_insert, DB_CONNECTION)
Redshift需要插入数据的格式('value1','value2',null)。这就是为什么我尝试在数据帧中将所有NaN替换为null。我怎样才能做到这一点呢?(我需要一个null值,而不是字符串“null”)
提前谢谢你的帮助
Python中没有空值。在AWS红移中,空值是指缺少或未知的值。因此,用空字符串替换NaN可能有效。考虑使用^ {CD1}},而不使用^ {CD2}}。
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.fillna.html#pandas-dataframe-fillna
这就是我的工作
这将把数据帧中的所有NaN值替换为None。在数据库中,无作为NULL加载。这适用于MS SQL
相关问题 更多 >
编程相关推荐