ก่อนที่จะวิเคราะห์ข้อมูลหรือทำกราฟอะไรขึ้นมาสักอย่าง เราต้องนำเข้าข้อมูลที่เราต้องการเอามาวิเคราะห์ก่อน ซึ่งข้อมูลเหล่านั้นอาจจะเป็นข้อมูลที่อยู่ในไฟล์บนเครื่องของเรา หรือข้อมูลบนอินเตอร์เน็ต

นำเข้าข้อมูลจากไฟล์ CSV

เราสามารถนำเข้าข้อมูลภายจากภายนอกที่มี extension เป็น .csv ได้ เราจะใช้ method ชื่อ read.csv() ในการโหลดข้อมูลเหล่านั้นเข้ามา

df = pd.read_csv("filedirectory/file.csv")

หากไฟล์หรือ dataset นั้นอยู่บนเครื่องของเรา วิธีนำเข้าข้อมูลภายนอกมีดังนี้

หา Directory ของไฟล์

เปิด terminal และหาไฟล์นั้น โดยไล่ไปทีละโฟลเดอร์ ให้ใช้คำสั่ง command line ในการหาไฟล์

  • ls —> เพื่อให้แสดงไฟล์ทั้งหมดของโฟลเดอร์ที่เราอยู่ขณะนี้
  • cd ระบุชื่อโฟลเดอร์ –> เข้าไปในไฟล์หรือโฟลเดอร์ที่เราระบุชื่อ โฟลเดอร์นั้นต้องเป็นโฟลเดอร์ที่แสดงตอนที่เรา ls ก่อนหน้านี้
  • cd .. –> กลับไปในโฟล์เดอร์ที่แล้ว
  • pwd –> พิมพ์ directory ของโฟลเดอร์นั้น

ตัวอย่าง

maria@Marias-MacBook-Air ~ % ls
Applications				Document
Desktop                                 eclipse
maria@Marias-MacBook-Air ~ % cd Document
maria@Marias-MacBook-Air Document % ls
Java		JavaWorkspace	python
maria@Marias-MacBook-Air Document % cd python
maria@Marias-MacBook-Air python % pwd
/Users/maria/Document/python
maria@Marias-MacBook-Air python % cd ..
maria@Marias-MacBook-Air Document % pwd
/Users/maria/Document
maria@Marias-MacBook-Air Document % 

เมื่อพบไฟล์ .csv แล้ว ให้ใช้คำสั่ง pwd เพื่อแสดง directory ที่เราอยู่ จากนั้นคัดลอก directory ที่ได้ เช่น

maria@Marias-MacBook-Air Document % cd python
maria@Marias-MacBook-Air python % ls
scottish_hills.csv
maria@Marias-MacBook-Air python % pwd
/Users/maria/Document/python

จะเห็นว่าไฟล์ .csv อยู่ในโฟลเดอร์ python และเมื่อเราพิมพ์ pwd เราจะได้ directory เป็น /Users/maria/Document/python จากนั้นให้คัดลอก และนำชื่อไฟล์มาต่อท้าย directory นี้ เป็น

/Users/maria/Document/python/scottish_hills.csv

import ไฟล์

เปิด IDE หรือ Editor แล้ว import pandas ก่อน จากนั้นจึง import ไฟล์ด้วย read.csv(‘file directory’) โดยมีไฟล์ directory เป็น argument ข้างใน

ตัวอย่าง

import pandas as pd
scottish_hills = pd.read_csv('/Users/maria/Document/python/scottish_hills.csv')
print(scottish_hills)

output:
                      Hill Name  Height   Latitude  Longitude    Osgrid
0         A' Bhuidheanach Bheag   936.0  56.870342  -4.199001  NN660775
1                 A' Chailleach   997.0  57.693800  -5.128715  NH136714
2                 A' Chailleach   929.2  57.109564  -4.179285  NH681041
3    A' Chraileag (A' Chralaig)  1120.0  57.184186  -5.154837  NH094147
4               A' Ghlas-bheinn   918.0  57.255090  -5.303687  NH008231
..                          ...     ...        ...        ...       ...
277                  The Saddle  1011.4  57.162395  -5.414721  NG936131
278               Toll Creagach  1054.0  57.309227  -4.999953  NH194282
279                    Tolmount   958.0  56.904725  -3.297929  NO210800
280             Tom a' Choinich  1112.0  57.299518  -5.048959  NH164273
281                  Tom Buidhe   957.0  56.893615  -3.292356  NO213787

[282 rows x 5 columns]

นำเข้าข้อมูลจากไฟล์ Excel

ไฟล์ Excel เป็นไฟล์อีกรูปแบบหนึ่งที่ได้รับความนิยมมาก เพราะสามารถ manipulate ไฟล์ได้ง่ายๆ ด้วยโปรแกรม Microsoft Excel แม้ไม่มีทักษะการเขียนโปรแกรมก็ทำได้

วิธีนำเข้าข้อมูลจากไฟล์ Excel จะเป็นวิธีเดียวกันกับไฟล์ CSV แค่มันคนละสกุลไฟล์กัน โค้ดก็เลยต่างกันนิดหน่อย โค้ดที่ใช้สำหรับนำเข้าไฟล์ Excel คือ

file = pd.read_excel("filedirectory/file.xlsx")

จากนั้นเรารันโปรแกรมอ่านไฟล์ได้เลย หากต้องการแปลงไฟล์เป็น CSV ก็สามารถทำได้ด้วยคำสั่งต่อไปนี้

file.to_csv("file.csv")

วิธีนี้เราจะแปลงไฟล์ Excel ให้อยู่ในรูป CSV และนำออกข้อมูลทันที ดังนี้หากเปิดโฟลเดอร์ workspace ที่ใช้ก็จะพบไฟล์ CSV เพิ่มขึ้นมาทุกครั้งที่กดรันโปรแกรม กดที่นี่เพื่อดู วิธีนำออกข้อมูล CSV และ Excel แบบง่ายๆ

นำเข้าข้อมูลจากอินเตอร์เน็ต

หากเรามีไฟล์ที่อยู่บนอินเตอร์เน็ตจากแหล่ง dataset อื่น และเราไม่ได้โหลดไฟล์นั้นลงเครื่อง เราสามารถ import ลิ้งค์ที่มี extension .csv มาได้

ตัวอย่าง

กดที่นี่เพื่อคัดลอกลิ้งค์ dataset ตัวอย่าง

import dataset

เราจะใส่ลิ้งค์ของ dataset ที่มี extension .csv แทน directory ไฟล์

ตัวอย่างเช่น

import pandas as pd
nba_players = pd.read_csv('https://media.geeksforgeeks.org/wp-content/uploads/nba.csv')

output:
              Name            Team  ...            College     Salary
0    Avery Bradley  Boston Celtics  ...              Texas  7730337.0
1      Jae Crowder  Boston Celtics  ...          Marquette  6796117.0
2     John Holland  Boston Celtics  ...  Boston University        NaN
3      R.J. Hunter  Boston Celtics  ...      Georgia State  1148640.0
4    Jonas Jerebko  Boston Celtics  ...                NaN  5000000.0
..             ...             ...  ...                ...        ...
453   Shelvin Mack       Utah Jazz  ...             Butler  2433333.0
454      Raul Neto       Utah Jazz  ...                NaN   900000.0
455   Tibor Pleiss       Utah Jazz  ...                NaN  2900000.0
456    Jeff Withey       Utah Jazz  ...             Kansas   947276.0
457            NaN             NaN  ...                NaN        NaN

[458 rows x 9 columns]

หากใช้ macOS แล้วไม่สามารถแสดงผลได้ แต่ขึ้น Error ในตัวอย่างต่อไปนี้

certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)

ให้เปิด Finder –> Application –> Python แล้วดับเบิ้ลคลิ้กที่ Install Certificates.command มันจะเปิด terminal ขึ้นมาและเริ่มติดตั้งทันที รอจนมันติดตั้งเสร็จ ให้กลับไปรันโค๊ดใน IDE ใหม่

Advertisement