ป้อนข้อมูล − สมมติว่าเรามีซีรีส์
0 2010-03-12 1 2011-3-1 2 2020-10-10 3 11-2-2
ผลผลิต − และผลลัพธ์สำหรับวันที่ที่ถูกต้องในชุดข้อมูลคือ
0 2010-03-12 2 2020-10-10
โซลูชันที่ 1
-
กำหนดซีรีส์
-
ใช้วิธีการกรองแลมบ์ดาเพื่อตรวจสอบรูปแบบในชุดข้อมูล
data = pd.Series(l) result = pd.Series(filter(lambda x:re.match(r"\d{4}\W\d{2}\W\d{2}",x),data))
-
สุดท้าย ตรวจสอบผลลัพธ์ของอนุกรมโดยใช้ฟังก์ชัน isin()
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น
import pandas as pd import re l = ['2010-03-12','2011-3-1','2020-10-10','11-2-2'] data = pd.Series(l) for i,j in data.items(): if(re.match(r"\d{4}\W\d{2}\W\d{2}",j)): print(i,j)
ผลลัพธ์
0 2010-03-12 2 2020-10-10 dtype: object
โซลูชันที่ 2
ตัวอย่าง
import pandas as pd import re l = ['2010-03-12','2011-3-1','2020-10-10','11-2-2'] data = pd.Series(l) result = pd.Series(filter(lambda x:re.match(r"\d{4}\W\d{2}\W\d{2}",x),data)) print(data[data.isin(result)])
ผลลัพธ์
0 2010-03-12 2 2020-10-10 dtype: object