Computer >> Máy Tính >  >> Lập trình >> Python

Thay đổi Loại dữ liệu cho một hoặc nhiều cột trong Khung dữ liệu Pandas


Trong hướng dẫn này, chúng ta sẽ tìm hiểu về việc chuyển đổi một hoặc nhiều kiểu dữ liệu cột thành một kiểu dữ liệu khác. Chúng tôi sẽ sử dụng phương thức DataFrame.astype () phương pháp.

Chúng tôi phải chuyển bất kỳ loại dữ liệu nào từ Python, Pandas hoặc Numpy để thay đổi kiểu dữ liệu phần tử cột. Chúng tôi cũng có thể cung cấp một từ điển các cột đã chọn để thay đổi kiểu dữ liệu phần tử cột cụ thể. Hãy xem các ví dụ với mã.

Ví dụ

 # nhập thư viện gấu trúc nhập khẩu gấu trúc dưới dạng pd # tạo DataFramedata_frame =pd.DataFrame ({'No':[1, 2, 3], 'Name':['Tutorialspoint', 'Mohit', 'Sharma'] , 'Age':[25, 32, 21]}) # chúng tôi sẽ thay đổi kiểu dữ liệu của tất cả các cột thành strdata_frame =data_frame.astype (str) # kiểm tra kiểu dữ liệu bằng cách sử dụng data_frame.dtypes methodprint (data_frame.dtypes)  

Đầu ra

Tất cả các kiểu dữ liệu cột đã thay đổi thành đối tượng str. Nếu bạn chạy chương trình trên, bạn sẽ nhận được kết quả sau.

 Không có objectName objectAge objectdtype:object 

Bây giờ, hãy thử thay đổi kiểu dữ liệu của cột Tuổi từ int thành str. Chúng tôi phải tạo một từ điển chỉ định tên cột và kiểu dữ liệu mong muốn.

Ví dụ

 # nhập thư viện gấu trúc nhập khẩu gấu trúc dưới dạng pd # tạo DataFramedata_frame =pd.DataFrame ({'No':[1, 2, 3], 'Name':['Tutorialspoint', 'Mohit', 'Sharma'] , 'Age':[25, 32, 21]}) # tạo từ điển với tên cột và dữ liệu typedata_types_dict ={'Age':str} # chúng ta sẽ thay đổi kiểu dữ liệu của cột Age thành str bằng cách đưa ra lệnh cho astype methoddata_frame =data_frame.astype (data_types_dict) # kiểm tra các kiểu dữ liệu bằng cách sử dụng data_frame.dtypes methodprint (data_frame.dtypes) 

Đầu ra

Nếu bạn thấy kết quả, chỉ có Độ tuổi kiểu dữ liệu cột được thay đổi từ int thành str. Xem kết quả bên dưới.

 Không có int64Name objectAge objectdtype:object 

Kết luận

Nếu bạn gặp bất kỳ khó khăn nào khi làm theo hướng dẫn, hãy đề cập đến chúng trong phần bình luận.