ในสถิติ คำว่า "ความถี่" ระบุจำนวนครั้งของค่าในตัวอย่างข้อมูลที่กำหนด ในฐานะซอฟต์แวร์สำหรับการวิเคราะห์ทางคณิตศาสตร์และวิทยาศาสตร์ Pandas มีวิธีการคำนวณความถี่จากตัวอย่างที่กำหนดในตัวมากมาย
ความถี่สัมบูรณ์ เหมือนกับความถี่ที่คำนวณจำนวนการเกิดขึ้นขององค์ประกอบข้อมูล ในตัวอย่างด้านล่าง เราเพียงแค่นับจำนวนครั้งที่ชื่อเมืองปรากฏใน DataFrame ที่กำหนด และรายงานเป็นความถี่
วิธีที่ 1 − เราใช้เมธอดแพนด้าชื่อ .value_counts
ตัวอย่าง
import pandas as pd # Create Data Frame data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"] # use the method .value_counts() df = pd.Series(data).value_counts() print(df)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Pune 3 Chandigarh 2 Hyderabad 1 dtype: int64
วิธีที่ 2 − เราใช้วิธีแพนด้าชื่อ .crosstab
ตัวอย่าง
import pandas as pd data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"] df = pd.DataFrame(data,columns=["City"]) tab_result = pd.crosstab(index=df["City"],columns=["count"]) print(tab_result)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
col_0 count City Chandigarh 2 Hyderabad 1 Pune 3
ความถี่สัมพัทธ์ − นี่คือเศษส่วนระหว่างความถี่ที่กำหนดและจำนวนการสังเกตทั้งหมดในตัวอย่างข้อมูล ดังนั้นค่าอาจเป็นค่าทศนิยมซึ่งสามารถแสดงเป็นเปอร์เซ็นต์ได้ เพื่อหาข้อมูลนั้น ก่อนอื่นเราคำนวณความถี่ตามที่แสดงในแนวทางแรกแล้วหารด้วยจำนวนการสังเกตทั้งหมดที่พบโดยใช้ฟังก์ชัน len()
ตัวอย่าง
import pandas as pd # Create Data Frame data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"] # use the method .value_counts() df = pd.Series(data).value_counts() print(df/len(data))
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Pune 0.500000 Chandigarh 0.333333 Hyderabad 0.166667 dtype: float64