คุณสมบัติ DateTime ของ Python และ Pandas: สิ่งที่คุณต้องรู้
เผยแพร่แล้ว: 2021-03-09ในบทความนี้ เราจะพูดถึง ฟีเจอร์ DateTime ของแพนด้า และนำเสนอข้อมูลเชิงลึกเกี่ยวกับความต้องการในขณะที่ทำงานกับชุดข้อมูลอนุกรมเวลาใน python
Python เป็นหนึ่งในห้าภาษาการเขียนโปรแกรมชั้นนำในแง่ของการใช้งานทั่วโลก นักพัฒนา ประมาณ 44% ของโลก ใช้สิ่งนี้เป็นประจำสำหรับงานที่เกี่ยวข้องกับวิทยาศาสตร์ข้อมูล และมันเป็นห้องสมุดหลามที่หลากหลายซึ่งจำเป็นต้องได้รับเครดิตสำหรับสิ่งนี้ Pandas เป็นหนึ่งในห้องสมุดวิเคราะห์ข้อมูลดังกล่าว
มันเขียนด้วยภาษา C หรือ python ล้วนๆ ทำให้เกิดซอร์สโค้ดแบ็คเอนด์ที่ปรับให้เหมาะสมที่สุด ยิ่งไปกว่านั้น python มีรูปแบบที่ชัดเจนและมีช่วงการเรียนรู้ที่ต่ำ เหมาะสำหรับผู้เริ่มต้น เราสามารถดำเนินการอะไรก็ได้ตั้งแต่ไมโครโปรเจ็กต์ไปจนถึงองค์กรระดับมหภาคที่มีความรู้ในภาษานี้
นักพัฒนา Python ที่มีความรู้และประสบการณ์เพียงพอกับไลบรารี Pandas ก็ต้องการงานด้าน data science หลายงานเช่นกัน รวมถึงนักวิเคราะห์ข้อมูล นักวิเคราะห์ธุรกิจ และวิศวกรการเรียนรู้ของเครื่อง เส้นทางอาชีพเหล่านี้ต้องการให้ผู้สมัครคุ้นเคยกับสถิติ การวิเคราะห์บิ๊กดาต้า การวิเคราะห์เชิงคาดการณ์ (โดยใช้ python) การสร้างภาพข้อมูล ฯลฯ
นักศึกษาวิศวกรรมศาสตร์ที่สนใจในการวิเคราะห์จึงสามารถเรียนหลักสูตรเฉพาะทางที่เน้นทักษะเหล่านี้ได้ คุณสามารถขอรับการรับรองระยะสั้น เช่น PG Diploma in Data Science จาก IIIT-Bangalore หรือพิจารณาเข้าร่วมโปรแกรมที่ได้รับการรับรองทั่วโลก เช่น วท.ม. สาขา Data Science จาก Liverpool John Moores University (LJMU) ประเทศอังกฤษ
ตอนนี้เราได้ให้ข้อมูลพื้นฐานสั้นๆ เกี่ยวกับความเกี่ยวข้องของงูหลามและแพนด้าในด้านเทคโนโลยีสมัยใหม่แล้ว มาเริ่มบทแนะนำทีละขั้นตอนเกี่ยวกับ แพนด้า DateTime กัน
สารบัญ
การอธิบายตัวแปรวันที่เวลา
คุณมักจะพบกับ DateTime ในระยะกลางของการเรียนรู้ python เช่น เมื่อคุณกำลังทำงานในโครงการ สมมติว่าคุณต้องดำเนินโครงการอีคอมเมิร์ซที่ต้องการให้คุณวางกลยุทธ์เกี่ยวกับไปป์ไลน์ซัพพลายเชน ซึ่งรวมถึงการหาเวลาสำหรับคำสั่งซื้อสำหรับการจัดส่ง จำนวนวันในการจัดส่ง และอื่นๆ
หากคุณไม่คุ้นเคยกับองค์ประกอบวันที่และเวลาใน Python แง่มุมของวิทยาศาสตร์ข้อมูลของปัญหานี้อาจเป็นเรื่องยากที่จะถอดรหัสสำหรับมือใหม่ ในทางกลับกัน ถ้าคุณรู้วิธีจัดการกับคุณลักษณะเหล่านี้ คุณสามารถรวบรวมข้อมูลเชิงลึกจากชุดข้อมูลเกือบทุกชุด
สำหรับผู้ที่ไม่ได้ฝึกหัด คลาสวันที่ใน python จะจัดการกับวันที่จากปฏิทินเกรกอเรียน ชั้นนี้ยอมรับ "ปี เดือน และวัน" เป็นอาร์กิวเมนต์จำนวนเต็ม ในขณะที่คลาสเวลาประกอบด้วยอาร์กิวเมนต์จำนวนเต็มถึงไมโครวินาที
นี่คือภาพรวมของตัวแปร DateTime ของ python พร้อมด้วยฟังก์ชัน Pandas เพื่อให้คุณเริ่มต้นได้!
การทำงานกับ DateTime ใน Python
พิจารณาตัวอย่างคำสั่งด้านล่างเพื่อทำความเข้าใจวิธีสร้างวัตถุวันที่ของคลาส DateTime ใน python
จากวันที่เวลานำเข้าวันที่
d1 = วันที่ (2021,2,23)
พิมพ์(d1)
พิมพ์(ประเภท(d1))
ผลลัพธ์
2021-04-23
<คลาส 'datetime.date'>
ตอนนี้ ให้เราแยกคุณสมบัติอื่นๆ เช่น วัน เดือน และปี จากวัตถุวันที่ที่สร้างด้านบน เราจะดำเนินการโดยใช้อ็อบเจ็กต์วันที่ในเครื่องปัจจุบัน ซึ่งเกี่ยวข้องกับการใช้ฟังก์ชัน today()
#วันที่ปัจจุบัน
d1 = วันที่วันนี้ ()
พิมพ์(d1)
# วัน
พิมพ์ ('วัน : ' , d1.day)
# เดือน
พิมพ์ ( 'เดือน : ' , d1.month)
# ปี
พิมพ์( 'ปี : ' ,d1.year)
วัตถุ DateTime ที่ส่งคืน
2021-02-23
วัน : 23
เดือน : 2
ปี : 2021
คลาสอื่นของโมดูล DateTime ที่ยอมรับค่าจำนวนเต็มและส่งกลับวัตถุคือเวลา มาดูกันว่ามันทำงานอย่างไรใน python
จากวันที่เวลานำเข้าเวลา
t1 = (12,20,12,40)
พิมพ์(t1)
พิมพ์(ประเภท(t1))
ผลลัพธ์
12:20:12.000040
<คลาส 'datetime.time'>
อย่างที่คุณเห็น วัตถุเวลาข้างต้นลดลงเหลือไมโครวินาที ดังนั้น ตอนนี้ คุณสามารถแยกแอตทริบิวต์ของเวลา เช่น ชั่วโมง นาที วินาที และไมโครวินาทีออกจากวัตถุได้
#ชั่วโมง
พิมพ์('ชั่วโมง:'t1.ชั่วโมง)
#นาที
พิมพ์('นาที:'t1.นาที)วันที่เวลา
คุณสามารถทำซ้ำสิ่งเดียวกันเป็นเวลาไม่กี่วินาทีและไมโครวินาที
ต่อไปนี้เป็นวิธีอื่นๆ ที่คุณคิดว่ามีประโยชน์:
- แทนที่ (): เพื่ออัปเดตวันที่เก่า
- วันทำงาน (): เพื่อคืนค่าจำนวนเต็มสำหรับวันใดก็ได้ในสัปดาห์ วันจันทร์คือ 0 และวันอาทิตย์คือ 6
- isoweekday(): สำหรับค่าจำนวนเต็มของวันทำงานที่อยู่ระหว่าง 1 ถึง 7
- isocalendar(): เพื่อแบ่งค่าของวันของ 'ปี' จากชุดข้อมูลที่กำหนด
- isleap(): เพื่อตรวจสอบว่าเป็นปีอธิกสุรทินหรือไม่
- fromisoformat(): เพื่อแปลงรูปแบบสตริงในรูปแบบ ISO เป็นวัตถุ DateTime
- isoformat(): เพื่อสร้างวันที่ในรูปแบบ ISO จากวัตถุ DateTime
- format(): เพื่อกำหนดรูปแบบเฉพาะของคุณ
ตอนนี้คุณเข้าใจวิธีสร้างวัตถุ DateTime ใน python แล้ว มาดูกันว่าห้องสมุด Pandas รองรับพวกมันอย่างไร
หมีแพนด้า to_datetime ตัวอย่าง
ด้วยแพนด้า คุณสามารถดำเนินการวิเคราะห์ข้อมูลได้หลากหลาย โดยเฉพาะอย่างยิ่งกับอ็อบเจ็กต์ python DateTime วิธีการที่โดดเด่นบางอย่าง ได้แก่ to_datetime() นี่คือวิธีที่คุณจัดการกับมัน:
- ด้วยเมธอด pandas to_datetime คุณสามารถแปลงรูปแบบสตริงวันที่และเวลาเป็นอ็อบเจกต์ DateTime
# to_datetime
date = pd.to_datetime ( '24 เมษายน 2020')
พิมพ์ (วันที่)
พิมพ์ (ประเภท (วันที่))
ผลลัพธ์
2021-02-23 00:00:00
<class pandas._libs.tslib.timestamp.Timestamp'>
คุณสังเกตเห็นสิ่งแปลก ๆ ที่นี่หรือไม่? ออบเจ็กต์ที่ส่งคืนโดย pandas to_datetime ไม่เหมือนกัน มันเป็นการประทับเวลาแทนที่จะเป็นวัตถุ DateTime นี่คือวิธีที่ไลบรารี Pandas ส่งคืนวัตถุ การประทับเวลาเทียบเท่ากับคุณสมบัติ DateTime ของหลาม
ความต้องการวันที่เวลา
มีหลายสถานการณ์ในชีวิตจริงที่มีการรวบรวมข้อมูลในช่วงเวลาหนึ่ง ทำให้คุณสามารถแยกแอตทริบิวต์วันที่และเวลาเพื่อทำความเข้าใจปัญหาเฉพาะได้ ตัวอย่างเช่น คุณต้องการวิเคราะห์นิสัยการอ่านของคุณ คุณสามารถขุดค้นรูปแบบของคุณเพื่อแยกส่วนได้ ไม่ว่าคุณจะชอบอ่านหนังสือในช่วงสุดสัปดาห์หรือวันธรรมดา ตอนกลางคืนหรือตอนเช้า เป็นต้น จากนั้นคุณสามารถรวบรวมหนังสือและบทความที่น่าสนใจทั้งหมดที่คุณต้องการอ่านในหนึ่งเดือนและจัดตารางเวลาของคุณ
ด้วยเหตุนี้ เราจึงได้ให้ข้อมูลสรุป 'วิธีการ' แก่คุณเกี่ยวกับการจัดการการจัดการวันที่-เวลาใน python และ pandas DateTime เราหวังว่าคุณจะฝึกฝนสิ่งที่เราได้เรียนรู้ในบทความนี้และฝึกฝนศิลปะในการทำงานกับชุดข้อมูลอนุกรมเวลา!
เรียนรู้ หลักสูตรวิทยาศาสตร์ข้อมูล จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว
บทสรุป
หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ Python, ห้องสมุดต่างๆ รวมถึง Pandas และการประยุกต์ใช้ในด้านวิทยาศาสตร์ข้อมูล ลองดู PG Diploma in Data Science ของ IIIT-B & upGrad ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษามากกว่า 10 กรณี & โครงการ, การประชุมเชิงปฏิบัติการเชิงปฏิบัติ, การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม, ตัวต่อตัวกับที่ปรึกษาในอุตสาหกรรม, การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
ต่อไปนี้เป็นคุณสมบัติที่ทำให้ Pandas เป็นหนึ่งในไลบรารี Python ที่ได้รับความนิยมมากที่สุด: DateTime เป็นคุณสมบัติที่สำคัญของ Pandas ที่จะส่งกลับวันที่และเวลาตามเวลาจริงของตำแหน่งของคุณในรูปแบบต่างๆ ด้านล่างนี้คือคุณสมบัติบางอย่างที่คุณอาจพบว่ามีประโยชน์: Pandas และ Numpy เป็นไลบรารี่สองไลบรารีที่ใช้กันมากที่สุดอย่างไม่ต้องสงสัยของ Python การเปรียบเทียบต่อไปนี้ระบุความแตกต่างหลักระหว่างไลบรารี Pandas และ Numpyฟีเจอร์อะไรที่ทำให้ Pandas เป็นห้องสมุดยอดนิยม
Pandas จัดเตรียมกรอบข้อมูลต่างๆ ให้เรา ซึ่งไม่เพียงแต่ช่วยให้แสดงข้อมูลได้อย่างมีประสิทธิภาพเท่านั้น แต่ยังช่วยให้เราจัดการข้อมูลได้อีกด้วย
มีคุณสมบัติการจัดตำแหน่งและการทำดัชนีที่มีประสิทธิภาพซึ่งให้วิธีการติดฉลากและจัดระเบียบข้อมูลอย่างชาญฉลาด
คุณลักษณะบางอย่างของ Pandas ทำให้โค้ดสะอาดและเพิ่มความสามารถในการอ่าน ซึ่งทำให้มีประสิทธิภาพมากขึ้น
นอกจากนี้ยังสามารถอ่านไฟล์ได้หลายรูปแบบ JSON, CSV, HDF5 และ Excel เป็นรูปแบบไฟล์บางรูปแบบที่ Pandas รองรับ
การรวมชุดข้อมูลหลายชุดเข้าด้วยกันเป็นความท้าทายอย่างแท้จริงสำหรับโปรแกรมเมอร์หลายคน แพนด้าก็เอาชนะสิ่งนี้เช่นกันและรวมชุดข้อมูลหลายชุดเข้าด้วยกันอย่างมีประสิทธิภาพ
Pandas ยังให้การเข้าถึงไลบรารี Python ที่สำคัญอื่นๆ เช่น Matplotlib และ NumPy ซึ่งทำให้เป็นไลบรารีที่มีประสิทธิภาพสูง ฟีเจอร์ DateTime ของ Pandas มีวิธีใดบ้าง
แทนที่ (): อัปเดตวันที่เก่า
วันทำงาน (): ส่งกลับค่าจำนวนเต็มสำหรับทุกวันโดยเริ่มจากวันจันทร์เป็น 0 ถึงวันอาทิตย์เป็น 6
isoweekday(): ส่งคืนค่าจำนวนเต็มของวันทำงานที่อยู่ระหว่าง 1 ถึง 7
isocalendar(): เพื่อแบ่งค่าของวันของ 'ปี' จากชุดข้อมูลที่กำหนด
isleap(): ตรวจสอบฟังก์ชันว่าเป็นปีอธิกสุรทินหรือไม่
fromisoformat(): เพื่อแปลงรูปแบบสตริงในรูปแบบ ISO เป็นวัตถุ DateTime
isoformat(): เพื่อสร้างวันที่ในรูปแบบ ISO จากวัตถุ DateTime
format(): เพื่อกำหนดรูปแบบเฉพาะของคุณ ห้องสมุด Pandas แตกต่างจาก Numpy อย่างไร
ก. หมีแพนด้า -
1. เป็นที่ต้องการสำหรับการวิเคราะห์และการแสดงข้อมูลแบบตาราง
2. นำเข้าข้อมูลจากรูปแบบไฟล์ต่างๆ ได้อย่างง่ายดายโดยใช้ Pandas รองรับ XLSX, ZIP, ข้อความ, HTML, XML, JSON เป็นต้น
3. แสดงประสิทธิภาพที่เร็วขึ้นเมื่อจัดการกับข้อมูลจำนวนมาก
4. ใช้พื้นที่ในหน่วยความจำค่อนข้างมากขึ้น
ข. นัมปี้ -
1. เป็นที่ต้องการสำหรับการดำเนินการทางคณิตศาสตร์และการคำนวณเชิงตัวเลข
2. ข้อมูลที่จัดเก็บในอาร์เรย์หลายมิติได้รับการสนับสนุนในไลบรารีนี้
3. ทำงานได้ดีขึ้นเมื่อจัดการกับข้อมูลจำนวนน้อย
4. ใช้พื้นที่หน่วยความจำน้อยลง