ฉันมี df เช่นนี้:
frame = pd.DataFrame({'a' : ['a,b,c', 'a,c,f', 'b,d,f','a,z,c']})
และรายการของรายการ:
letters = ['a','c']
เป้าหมายของฉันคือการรับแถวทั้งหมดจากframe
ที่มีอย่างน้อย 2 องค์ประกอบในletters
ฉันคิดวิธีแก้ปัญหานี้:
for i in letters:
subframe = frame[frame['a'].str.contains(i)]
สิ่งนี้ให้สิ่งที่ฉันต้องการ แต่อาจไม่ใช่วิธีที่ดีที่สุดในแง่ของความยืดหยุ่น มีโซลูชัน 'vectorised' หรือไม่ ขอบคุณ
4
มันจะให้เฉพาะแถวที่มีตัวอักษรสุดท้ายเพราะคุณแทนที่เฟรมย่อยในการวนซ้ำใด ๆ
—
Tom Ron
@TomRon คุณพูดถูกอะไรผิดพลาด :)
—
Kauber