我怎么知道 pd.to_datetime 改变了什么?
python 208
原文标题 :How do I know what have been changed by pd.to_datetime?
假设它是来自 csv 的大型数据库负载,我不知道日期列中有一个“Hello”。
df = {"No.": [1, 2, 3, 4],
"Date": ["17/4/2022", "18/4/2022", "Hello", "19/4/2022"]}
输出:
No. Date
1 17/4/2022
2 18/4/2022
3 Hello
4 19/4/2022
之后df["Date"] = pd.to_datetime(df["Date"], infer_datetime_format=True, errors="coerce")
“你好”变成了“NaT”。
输出:
No. Date
1 17/4/2022
2 18/4/2022
3 NaT
4 19/4/2022
我怎么知道有一个“你好”?
我如何知道 pd.to_datetime 更改了哪些值?
回复
我来回复-
Niqua 评论
有一种方法可以实现您想要做的事情 – 您可以按索引加入两个数据框:
df_1.join(df_2, on = df_1.index, lsuffix = '_df_1', rsuffix = '_df_2')
所以结果表可能看起来像这样
2年前 -
Abhyuday Vaish 评论
正如您所提到的,您想知道更改并仅获取字符串。你可以这样做:
import pandas as pd df = pd.DataFrame({"No.": [1, 2, 3, 4], "Date": ["17/4/2022", "18/4/2022", "Hello", "19/4/2022"]}) df['Changes'] = df['Date'].apply(lambda x: x if x.isalpha() else "No Change")
输出:
No. Date Changes 0 1 17/4/2022 No Change 1 2 18/4/2022 No Change 2 3 Hello Hello 3 4 19/4/2022 No Change
2年前