Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python - แคสต์ประเภทข้อมูลของคอลัมน์เดียวใน Pandas DataFrame


หากต้องการสร้างคอลัมน์เดียว ให้ใช้เมธอด astype() ขั้นแรกให้เราสร้าง DataFrame ที่มี 2 คอลัมน์ หนึ่งในนั้นคือประเภท "float64" และอีกประเภทหนึ่งคือ "int64" -

dataFrame = pd.DataFrame(
   {
      "Reg_Price": [7000.5057, 1500, 5000, 8000, 9000.75768, 6000],
      "Units": [90, 120, 100, 150, 200, 130]
   }
)

ตรวจสอบประเภท -

dataFrame.dtypes

สมมติว่าเราต้องสร้าง "หน่วย" คอลัมน์เดียวจาก int64 เป็น int32 สำหรับสิ่งนั้น ให้ใช้ astype() −

dataFrame.astype({'Units': 'int32'}).dtypes

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

import pandas as pd

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Reg_Price": [7000.5057, 1500, 5000, 8000, 9000.75768, 6000],
      "Units": [90, 120, 100, 150, 200, 130]
   }
)

print"DataFrame ...\n",dataFrame
print"\nDataFrame Types ...\n",dataFrame.dtypes
print"\nCast only a single column to int32..."

print"\nUpdated DataFrame Types ...\n",dataFrame.astype({'Units': 'int32'}).dtypes


ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

DataFrame ...
   Reg_Price   Units
0 7000.50570     90
1 1500.00000    120
2 5000.00000    100
3 8000.00000    150
4 9000.75768    200
5 6000.00000    130

DataFrame Types ...
Reg_Price   float64
Units         int64
dtype: object

Cast only a single column to int32...

Updated DataFrame Types ...
Reg_Price   float64
Units         int32
dtype: object