Pandas กับ NumPy + SciPy ใน Python แตกต่างกันอย่างไร [ปิด]


195

พวกเขาทั้งคู่ดูคล้ายกันมากและฉันอยากรู้ว่าแพคเกจใดจะเป็นประโยชน์สำหรับการวิเคราะห์ข้อมูลทางการเงินมากกว่า

คำตอบ:


314

นุ่นจัดทำเครื่องมือการจัดการข้อมูลระดับสูงที่สร้างขึ้นบน NumPy NumPy ด้วยตัวเองเป็นเครื่องมือระดับค่อนข้างต่ำคล้ายกับ MATLAB ในอีกทางหนึ่งแพนด้ามีฟังก์ชั่นอนุกรมเวลาที่หลากหลายการจัดเรียงข้อมูลสถิติที่เป็นมิตรกับ NA กลุ่มการรวมและการเข้าร่วมและสิ่งอำนวยความสะดวกอื่น ๆ มากมาย เป็นที่นิยมอย่างมากในช่วงไม่กี่ปีที่ผ่านมาในด้านการเงิน ฉันจะมีบทที่ทุ่มเทให้กับการวิเคราะห์ข้อมูลทางการเงินโดยใช้แพนด้าในหนังสือเล่มต่อไปของฉัน


217
คุณควรจะกล่าวว่าคุณเป็นผู้เขียนหลักของนุ่น :) หนังสือที่มีปัญหา: shop.oreilly.com/product/0636920023784.do
Yktula

3
มันจะยุติธรรมหรือไม่ที่จะบอกว่าคนส่วนใหญ่จัดหาอาร์เรย์ที่มีประสิทธิภาพเป็นหลักในขณะที่แพนด้ามีพจนานุกรมที่มีประสิทธิภาพ? (ในทั้งสองกรณี จำกัด ประเภทข้อมูลที่สอดคล้องกันแทนที่จะเป็นรูปแบบอิสระ) สำหรับฉัน (ฉันเพิ่งเริ่มมองเข้าไปในตอนนี้) สิ่งนี้ทำให้ฉันแตกต่างพื้นฐาน: การจัดการข้อมูลที่จับคู่ป้ายกำกับ (ใน 1d aka dicts และ ตาราง 2d aka) การจัดตำแหน่งข้อมูลเข้าร่วม ฯลฯ ล้วนเป็นไปได้เนื่องจากสิ่งนี้ แต่สำหรับคนที่ไม่เห็นด้วยกับความแตกต่างพื้นฐานมันไม่ชัดเจนเลยว่าความหมายเหล่านั้น (เช่นอะไรคือ "การจัดตำแหน่งข้อมูล" ของสองแถว numpy)
Brandyn

6
อาจเป็นคำถามที่โง่ แต่คุณหมายถึงอะไรโดยNA-friendly statisticsกล่าวถึงในคำตอบของคุณ
Adil Abbasi

6
ฉันคิดว่าเขาหมายถึงสถิติโดยคำนึงถึงข้อมูลที่ขาดหายไป (NA, "Not Available")
user1319128

4
Cold thread แต่สิ่งที่เกี่ยวกับความแตกต่างของประสิทธิภาพ bw การดำเนินการที่ซับซ้อนในจำนวน numpy แต่ลดความซับซ้อนของ syntactically ใน pandas? มีค่าใช้จ่ายในการดำเนินการไปสู่เส้นทางไวยากรณ์ระดับสูงและง่ายหรือไม่?
3 พิตต์

59

จำเป็นต้องใช้ Numpy โดยแพนด้า (และโดยเครื่องมือตัวเลขทั้งหมดสำหรับ Python) Scipy ไม่จำเป็นต้องใช้อย่างเคร่งครัดสำหรับแพนด้า แต่มีการระบุไว้ว่าเป็น "การพึ่งพาตัวเลือก" ฉันจะไม่พูดว่าแพนด้าเป็นทางเลือกของ Numpy และ / หรือ Scipy แต่เป็นเครื่องมือพิเศษที่ให้วิธีการทำงานที่คล่องตัวยิ่งขึ้นกับข้อมูลตัวเลขและตารางใน Python คุณสามารถใช้โครงสร้างข้อมูลของนุ่น แต่สามารถดึงฟังก์ชั่น Numpy และ Scipy ได้อย่างอิสระเพื่อจัดการมัน


4

Pandas เสนอวิธีที่ยอดเยี่ยมในการจัดการกับตารางเนื่องจากคุณสามารถทำการ binning ได้ง่าย ( การทำดาต้าเบสใน pandas ใน Python ) และคำนวณสถิติ สิ่งอื่นที่ยอดเยี่ยมในแพนด้าคือคลาส Panel ที่คุณสามารถเข้าร่วมชุดของเลเยอร์ที่มีคุณสมบัติแตกต่างกันและรวมเข้าด้วยกันโดยใช้ฟังก์ชั่น groupby

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.