Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

เขียนโปรแกรมใน Python เพื่อกรองเฉพาะองค์ประกอบจำนวนเต็มในชุดที่กำหนด


ป้อนข้อมูล − สมมติว่าคุณมีซีรีย์ดังต่อไปนี้ -

0    1
1    2
2    python
3    pandas
4    3
5    4
6    5

ผลผลิต − ผลลัพธ์สำหรับองค์ประกอบจำนวนเต็มเท่านั้นคือ −

0    1
1    2
4    3
5    4
6    5

โซลูชันที่ 1

  • กำหนดซีรีส์

  • ใช้วิธีการกรองแลมบ์ดาภายในนิพจน์ทั่วไปเพื่อตรวจสอบความถูกต้องของตัวเลข และนิพจน์ยอมรับเฉพาะสตริง ดังนั้นให้แปลงองค์ประกอบทั้งหมดเป็นสตริง มีการกำหนดไว้ด้านล่าง

   data = pd.Series(ls)
   result = pd.Series(filter(lambda x:re.match(r"\d+",str(x)),data))
  • สุดท้าย ตรวจสอบค่าโดยใช้ฟังก์ชัน isin()

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น

import pandas as pd
ls = [1,2,"python","pandas",3,4,5]
data = pd.Series(ls)
for i,j in data.items():
   if(type(j)==int):
      print(i,j)

ผลลัพธ์

0    1
1    2
4    3
5    4
6    5

โซลูชันที่ 2

ตัวอย่าง

import pandas as pd
import re
ls = [1,2,"python","pandas",3,4,5]
data = pd.Series(ls)
result = pd.Series(filter(lambda x:re.match(r"\d+",str(x)),data))
print(data[data.isin(result)])

ผลลัพธ์

0    1
1    2
4    3
5    4
6    5