如图,粗体为index和columns,columns不全为datetime格式,如何仅将datetime转换为%Y-%m-%d.
from datetime import datetime
import pandas as pd
df1 = pd.DataFrame(
{
"name": ["Liver", "Arry", "Ack","Eorge","Oah"],
"team": ["E", "C", "A","C","D"],
"2022-01-07 00:00:00": ["89", "36", "57","93","65"],
"2022-01-08 00:00:00": ["21", "33", "60","95","49"],
}
)
def renameCol(rawList):
newList = []
for i in rawList:
try:
if isinstance(datetime.strptime(i,'%Y-%m-%d %H:%M:%S'), datetime) == True:
newI = datetime.strptime(i,'%Y-%m-%d %H:%M:%S').strftime("%Y-%m-%d")
newList.append(newI)
except:
newList.append(i)
return newList
df1.columns = renameCol(list(df1.columns))
df1