ฉันมีข้อมูลของฉันอยู่ในกรอบข้อมูลแพนด้าดังนี้:
df1 = pd.DataFrame({'A':['yes','yes','yes','yes','no','no','yes','yes','yes','no'],
                   'B':['yes','no','no','no','yes','yes','no','yes','yes','no']})
ดังนั้นข้อมูลของฉันมีลักษณะเช่นนี้
----------------------------
index         A        B
0           yes      yes
1           yes       no
2           yes       no
3           yes       no
4            no      yes
5            no      yes
6           yes       no
7           yes      yes
8           yes      yes
9            no       no
-----------------------------
ฉันต้องการแปลงเป็นกรอบข้อมูลอื่น ผลลัพธ์ที่คาดหวังสามารถแสดงในสคริปต์ python ต่อไปนี้:
output = pd.DataFrame({'A':['no','no','yes','yes'],'B':['no','yes','no','yes'],'count':[1,2,4,3]})
ผลลัพธ์ที่คาดหวังของฉันจะเป็นแบบนี้
--------------------------------------------
index      A       B       count
--------------------------------------------
0         no       no        1
1         no      yes        2
2        yes       no        4
3        yes      yes        3
--------------------------------------------
จริงๆแล้วฉันสามารถค้นหาชุดค่าผสมทั้งหมดและนับได้โดยใช้คำสั่งต่อไปนี้: mytable = df1.groupby(['A','B']).size()
อย่างไรก็ตามปรากฎว่าชุดค่าผสมดังกล่าวอยู่ในคอลัมน์เดียว ฉันต้องการแยกแต่ละค่าในการรวมกันเป็นคอลัมน์อื่นและเพิ่มอีกหนึ่งคอลัมน์สำหรับผลลัพธ์ของการนับ เป็นไปได้หรือไม่? ฉันขอคำแนะนำได้ไหม ขอบคุณล่วงหน้า.
set_index(). พยายามใช้groupby()เพื่อจัดกลุ่มแถวเข้าด้วยกันโดยมีคู่คอลัมน์ทั่วไป เยี่ยมมากขอบคุณ!