วิธีแปลงคอลัมน์ pandas dataframe เป็น int


คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแปลงคอลัมน์ของ DataFrame แพนด้าเป็นประเภทจำนวนเต็ม:

 df[' col1 '] = df[' col1 ']. astype (int)

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่างที่ 1: แปลงคอลัมน์ให้เป็นจำนวนเต็ม

สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E'],
                   ' points ': ['25', '20', '14', '16', '27'],
                   ' assists ': ['5', '7', '7', '8', '11']})

#view data types for each column
df. dtypes

player object
points object
assists object
dtype:object

เราจะเห็นว่าปัจจุบันไม่มีคอลัมน์ใดที่มีประเภทข้อมูลจำนวนเต็ม

รหัสต่อไปนี้แสดงวิธีการแปลงคอลัมน์ “จุด” ของ DataFrame เป็นประเภทจำนวนเต็ม:

 #convert 'points' column to integer
df[' points '] = df[' points ']. astype (int)

#view data types of each column
df. dtypes

player object
int64 dots
assists object
dtype:object

เราจะเห็นว่าตอนนี้คอลัมน์ “จุด” กลายเป็นจำนวนเต็มแล้ว ในขณะที่คอลัมน์อื่นๆ ทั้งหมดยังคงไม่เปลี่ยนแปลง

ตัวอย่างที่ 2: แปลงหลายคอลัมน์เป็นจำนวนเต็ม

รหัสต่อไปนี้แสดงวิธีการแปลงหลายคอลัมน์ของ DataFrame ให้เป็นจำนวนเต็ม:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E'],
                   ' points ': ['25', '20', '14', '16', '27'],
                   ' assists ': ['5', '7', '7', '8', '11']})

#convert 'points' and 'assists' columns to integer
df[[' points ', ' assists ']] = df[[' points ', ' assists ']]. astype (int)

#view data types for each column
df. dtypes

player object
int64 dots
assists int64
dtype:object

เราจะเห็นว่าคอลัมน์ “คะแนน” และ “ผ่าน” ถูกแปลงเป็นจำนวนเต็มในขณะที่คอลัมน์ “ผู้เล่น” ยังคงไม่เปลี่ยนแปลง

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการแปลงไฟล์ทั่วไปอื่นๆ ใน Python:

วิธีแปลงคอลัมน์ Pandas DataFrame เป็นสตริง
วิธีแปลงการประทับเวลาเป็นวันที่/เวลาใน Pandas
วิธีแปลง DateTime เป็นวันที่ใน Pandas
วิธีแปลงสตริงให้ลอยใน Pandas

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *