我一直在尝试用boto3从dynamodb数据库中获取所有数据。在收到所有数据后,我试图将数据导出到. csv。问题是,我所有的十进制数字都丢失了逗号。例如,3.457变成了:3457这对于进一步的计算来说是一个很大的不同。我尝试使用df. values. round(4),但是没有任何效果。当我打印 Dataframe 到控制台时,我可以看到所有的值都是正确的。导出部分出了问题。
这是我正在使用的代码:
#Get all items from Dynamodb
response = vopak_table.scan()
data = response['Items']
while 'LastEvaluatedKey' in response:
response = vopak_table.scan(ExclusiveStartKey=response['LastEvaluatedKey'])
data.extend(response['Items'])
#Write data to CSV
df = pd.DataFrame(data)
#Time column first in sheet
first_column = df.pop('time')
df.insert(0,'time',first_column)
#Save as CSV
df.to_csv(r'C:\***\export.csv',index=False, header=True)
print(df)
打印到控制台的结果如下所示:保存前:保存后
:3:
谢谢!
1条答案
按热度按时间vqlkdk9b1#
你能显示你的列的类型吗?也许列是字符串类型而不是浮点型。
此外,尽管这里显示的数据很少,但如果您在线提问,我仍然建议使用更匿名的 Dataframe 名称。