从类python导出数据到类CSV



我有一个python代码,用于从azure方法中提取数据。

for item in response:
print(type(item))
print(item)
df = pd.DataFrame([item])
print(df)

下面是print语句的输出。

1. print(type(item)) :
<class 'azure.mgmt.costmanagement.models._models_py3.SavingsPlanUtilizationSummary'>

2.print(item) : 
{'usage_date': datetime.datetime(2022, 12, 26, 0, 0, tzinfo=<isodate.tzinfo.Utc object at 0x00000277D15A2D60>), 'avg_utilization_percentage': 95.83333333039417, 'min_utilization_percentage': 0.0}
3.print(df):
0
0  {'usage_date': datetime.datetime(2022, 12, 26, 0, 0, tzinfo=<isodate.tzinfo.Utc object at 0x00000277D15A2D60>), 'avg_utilization_percentage': 95.83333333039417, 'min_utilization_percentage': 0.0}

以上输出我得到,但我正试图将数据导出到csv与不同的列。我怎样才能用正确的日期格式做到这一点。你能帮帮我吗?

如果您想将响应中的所有行存储到一个CSV文件中,请尝试此操作。

usage_statistics = pd.DataFrame([row for row in response])
usage_statistics.to_csv('output.csv', index=False)

您也可以使用date_format参数来格式化datetime对象。

usage_statistics.to_csv('output.csv', date_format='%Y%m%d', index=False)

这是CSV文件的内容。

usage_date,avg_utilization_percentage,min_utilization_percentage
2022-12-26,95.83333333039417,0.0

参考官方文档:strftime()和strptime()行为的格式字符串的代码

这里的问题是,从Azure导入数据时,您没有格式化usage_date。当从azure导入数据时,请在.strftime("%Y-%m-%d")之后将日期时间转换为数据帧,这样就可以了。然后你可以用to_csv把它转换成csv文件。

最新更新