Python:pandas.DataFrame.to_csv 未填充输出列
Python: pandas.DataFrame.to_csv is not populating the output column
我有以下代码,基本上将 UTC 时间戳的格式从 mm/dd/yyyy hh:mm:ss AM 更改为 dd/mm/yyyy hh:mm:ss AM。它工作正常,但现在我需要它来替换同一个 csv 文件中的旧列或创建另一个 csv 文件,但使用修改后的日期格式。
问题是,当我 运行 代码时,UTC 时间戳列为空,但它有 header。
这是代码
import pandas as pd
import datetime
from datetime import datetime
from datetime import time
df = pd.read_csv("C:/Users/javie/OneDrive/Escritorio/22.1.21_P1_English_Language_Y10.csv")
df[' UTC Event Timestamp'] = pd.to_datetime(df[' UTC Event Timestamp'])
df[' UTC Event Timestamp'] = df[' UTC Event Timestamp'].apply(lambda x: print(x.strftime('%d/%m/%Y %I:%M:%S %p')))
df.to_csv("C:/Users/javie/OneDrive/Escritorio/output.csv",index=False,date_format='%d/%m/%Y %I:%M:%S %p')
您的代码就快完成了。
print()
的使用不是必需的,这就是你的问题所在。
删除它,您的代码应该可以工作:
import pandas as pd
import datetime
from datetime import datetime
from datetime import time
df = pd.read_csv("C:/Users/javie/OneDrive/Escritorio/22.1.21_P1_English_Language_Y10.csv")
df[' UTC Event Timestamp'] = pd.to_datetime(df[' UTC Event Timestamp'])
df[' UTC Event Timestamp'] = df[' UTC Event Timestamp'].apply(lambda x: x.strftime('%d/%m/%Y %I:%M:%S %p'))
df.to_csv("C:/Users/javie/OneDrive/Escritorio/output.csv",index=False,date_format='%d/%m/%Y %I:%M:%S %p')
我有以下代码,基本上将 UTC 时间戳的格式从 mm/dd/yyyy hh:mm:ss AM 更改为 dd/mm/yyyy hh:mm:ss AM。它工作正常,但现在我需要它来替换同一个 csv 文件中的旧列或创建另一个 csv 文件,但使用修改后的日期格式。 问题是,当我 运行 代码时,UTC 时间戳列为空,但它有 header。
这是代码
import pandas as pd
import datetime
from datetime import datetime
from datetime import time
df = pd.read_csv("C:/Users/javie/OneDrive/Escritorio/22.1.21_P1_English_Language_Y10.csv")
df[' UTC Event Timestamp'] = pd.to_datetime(df[' UTC Event Timestamp'])
df[' UTC Event Timestamp'] = df[' UTC Event Timestamp'].apply(lambda x: print(x.strftime('%d/%m/%Y %I:%M:%S %p')))
df.to_csv("C:/Users/javie/OneDrive/Escritorio/output.csv",index=False,date_format='%d/%m/%Y %I:%M:%S %p')
您的代码就快完成了。
print()
的使用不是必需的,这就是你的问题所在。
删除它,您的代码应该可以工作:
import pandas as pd
import datetime
from datetime import datetime
from datetime import time
df = pd.read_csv("C:/Users/javie/OneDrive/Escritorio/22.1.21_P1_English_Language_Y10.csv")
df[' UTC Event Timestamp'] = pd.to_datetime(df[' UTC Event Timestamp'])
df[' UTC Event Timestamp'] = df[' UTC Event Timestamp'].apply(lambda x: x.strftime('%d/%m/%Y %I:%M:%S %p'))
df.to_csv("C:/Users/javie/OneDrive/Escritorio/output.csv",index=False,date_format='%d/%m/%Y %I:%M:%S %p')