Pandas là một trong những thư viện phân tích dữ liệu phổ biến giúp hiểu được những hiểu biết sâu sắc về dữ liệu. Mỗi DataFrame đi kèm với bộ sưu tập dữ liệu 2 chiều. Trong bài viết này, bạn sẽ tìm hiểu về phương thức astype[] và tầm quan trọng của nó trong Python
Phương thức astype[]
Khung dữ liệu. Phương thức astype[] giúp chuyển một đối tượng Pandas sang một kiểu dữ liệu đã chỉ định. Phương pháp này cũng cho phép chuyển đổi bất kỳ cột DataFrame hiện có tiêu chuẩn nào sang bất kỳ loại xác định nào. Điều này trở nên rất hữu ích khi các lập trình viên muốn chuyển bất kỳ cột nào hoặc toàn bộ dữ liệu của DataFrame từ loại này sang loại khác
cú pháp
DataFrame.astype[dtype, copy = True, errors = ’raise’]
ở đâu, dtype là bất kỳ NumPy hợp lệ nào. dtype hoặc kiểu dữ liệu Python yêu cầu hàm truyền toàn bộ DataFrame hoặc đối tượng cột của nó sang loại được đề cập đó. Tham số sao chép trả về một bản sao của dữ liệu khi giá trị sao chép được đặt thành True. Cuối cùng, thông số lỗi sẽ kiểm soát việc đưa ra các ngoại lệ nếu có hoặc tìm thấy bất kỳ dữ liệu không hợp lệ nào cho dtype
Ví dụ
import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
đầu ra
Bây giờ, áp dụng phương thức astype[] ở dòng tiếp theo, bạn có thể thay đổi hoặc chuyển đổi loại của DataFrame thành bất kỳ loại dữ liệu hợp lệ nào khác.
>>> df. kiểu chữ ['int32']. kiểu chữ
đầu ra
astype[] với các đối tượng DataFrame
Danh mục là một loại dữ liệu khác giúp các nhà phân tích dữ liệu quản lý các giá trị DataFrame. Theo mặc định, DataFrames được tạo bằng từ điển có dạng Đối tượng / loại dữ liệu. Tuy nhiên, nếu bạn sử dụng astype[] thì bạn có thể chuyển đổi chúng thành loại danh mục
Khung dữ liệu. Hàm astype[] được sử dụng để truyền kiểu dữ liệu cột [dtype] trong đối tượng pandas, nó hỗ trợ String, flat, date, int, datetime bất kỳ nhiều kiểu dữ liệu nào khác được hỗ trợ bởi Numpy. Điều này rất hữu ích khi bạn muốn truyền cột DataFrame từ loại dữ liệu này sang loại dữ liệu khác
pandas astype[] Điểm chính –
- Nó được sử dụng để truyền kiểu dữ liệu [dtype]
- Hỗ trợ thay đổi nhiều kiểu dữ liệu bằng Dict
- Hỗ trợ tất cả các loại dữ liệu đi kèm với Numpy
1. Khung dữ liệu. astype[] Cú pháp
Sau đây là cú pháp của
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
0. Hàm này nhận các tham số
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
1,
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
2 và
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
3
# astype[] Syntax
DataFrame.astype[dtype, copy=True, errors='raise']
Sau đây là các tham số của hàm
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
4
1 – Chấp nhận một numpy. dtype hoặc kiểu Python để chuyển toàn bộ đối tượng pandas thành cùng loại. Sử dụng {col. dtype, …}, trong đó col là nhãn cột và dtype là numpy. dtype hoặc loại Python để truyền một hoặc nhiều cột của DataFrameimport pandas as pd import numpy as np # Create DataFrame from Dictionary technologies = { 'Fee' :["20000","25000","26000"], 'Discount':["1000","2300","1500"] } df = pd.DataFrame[technologies] print[df.dtypes] # Outputs Fee object Discount object dtype: object
2 -Mặc định Đúng. Trả lại một bản sao khiimport pandas as pd import numpy as np # Create DataFrame from Dictionary technologies = { 'Fee' :["20000","25000","26000"], 'Discount':["1000","2300","1500"] } df = pd.DataFrame[technologies] print[df.dtypes] # Outputs Fee object Discount object dtype: object
7 [hãy hết sức cẩn thận khi đặtimport pandas as pd import numpy as np # Create DataFrame from Dictionary technologies = { 'Fee' :["20000","25000","26000"], 'Discount':["1000","2300","1500"] } df = pd.DataFrame[technologies] print[df.dtypes] # Outputs Fee object Discount object dtype: object
8 vì các thay đổi đối với giá trị sau đó có thể lan sang các đối tượng gấu trúc khác]import pandas as pd import numpy as np # Create DataFrame from Dictionary technologies = { 'Fee' :["20000","25000","26000"], 'Discount':["1000","2300","1500"] } df = pd.DataFrame[technologies] print[df.dtypes] # Outputs Fee object Discount object dtype: object
3 – Tăng mặc địnhimport pandas as pd import numpy as np # Create DataFrame from Dictionary technologies = { 'Fee' :["20000","25000","26000"], 'Discount':["1000","2300","1500"] } df = pd.DataFrame[technologies] print[df.dtypes] # Outputs Fee object Discount object dtype: object
- Sử dụng 'raise' để tạo ngoại lệ khi không thể truyền do dữ liệu không hợp lệ cho loại
- Sử dụng 'bỏ qua' để không tăng ngoại lệ [bỏ lỗi/ngoại lệ]. Khi có lỗi trả về đối tượng ban đầu
2. Khung dữ liệu. astype[] – Truyền kiểu dữ liệu cho tất cả các cột [dtype]
Theo mặc định, hàm gấu trúc
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
4 cố gắng truyền tất cả các cột DataFrame sang các loại import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
41 hoặc Python đã chỉ định [int, string, float, date, datetime]. Nếu bất kỳ cột nào không thể truyền do dữ liệu hoặc nan không hợp lệ, nó sẽ phát sinh lỗi 'ValueError. nghĩa đen không hợp lệ' và không hoạt độngVí dụ dưới đây minh họa truyền tất cả các kiểu dữ liệu cột
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
Khung dữ liệu. dtypes trả về tên Cột và dtypes cho tất cả các cột DataFrame. Lưu ý rằng DataFrame ở trên có các loại đối tượng cho tất cả các cột
Bây giờ, hãy truyền kiểu dữ liệu thành số nguyên có dấu 64 bit, bạn có thể sử dụng
import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
42,import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
43, import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
44 hoặc import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
45 làm tham số. Để chuyển sang số nguyên có dấu 32 bit, hãy sử dụng import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
46, import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
47import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
4Lưu ý rằng nó đã cập nhật tất cả các cột với dtype mới
Hãy truyền nó thành Chuỗi, sử dụng
import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
48 hoặc import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
49
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
5Hãy chuyển nó sang kiểu float bằng cách sử dụng
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
50,
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
51,
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
52
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
93. Thay đổi loại cột cụ thể
Bạn cũng có thể thay đổi loại cột cụ thể bằng cách sử dụng hàm
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
53, vì mỗi cột trên DataFrame là pandas Series, mình sẽ lấy cột từ DataFrame là Series và sử dụng hàm
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
4. Trong ví dụ dưới đây,
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
55 hoặc
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
56 trả về đối tượng Sê-ri
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
44. astype[] – Truyền nhiều cột bằng Dict
Tham số
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
1 của hàm
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
4 cũng hỗ trợ Từ điển ở định dạng {col. dtype, …} trong đó col là nhãn cột và dtype là loại import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
41 hoặc Python [int, string, float, date, datetime] để truyền một hoặc nhiều cột DataFrame
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
8Bây giờ, bằng cách sử dụng hàm pandas
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
0, chuyển cột
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
91 thành ________ 149, cột ________ 293 thành ________ 145 và cột ________ 295 thành
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
52
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
65. astype[] với lỗi tăng hoặc bỏ qua
Cuối cùng, hãy xem cách bạn có thể tăng hoặc bỏ qua lỗi trong khi truyền, để làm như vậy, bạn nên sử dụng thông số
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
3. Theo mặc định, nó sử dụng
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
98 làm giá trị, nghĩa là tạo ra ngoại lệ khi không thể truyền do dữ liệu không hợp lệ cho loạiTừ cột DataFrame
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
91 của chúng tôi có dữ liệu import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
49, hãy truyền dữ liệu này tới import numpy as np
import pandas as pd
dat = {'c1': [12, 14], 'c2': [16, 18]}
df = pd.DataFrame[data = dat]
df.dtypes
45 và xem điều gì sẽ xảy ra
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
2Như bạn thấy, nó đã gây ra lỗi khi không thể truyền. Bây giờ, hãy loại bỏ ngoại lệ bằng cách sử dụng giá trị bỏ qua đối với thông số lỗi. Với điều này, khi xảy ra lỗi, nó sẽ bỏ qua lỗi và trả về cùng một đối tượng mà không cần cập nhật
import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
'Fee' :["20000","25000","26000"],
'Discount':["1000","2300","1500"]
}
df = pd.DataFrame[technologies]
print[df.dtypes]
# Outputs
Fee object
Discount object
dtype: object
3Phần kết luận
Trong bài viết này, tôi đã giải thích về DataFrame của gấu trúc. cú pháp astype[], ví dụ về truyền toàn bộ DataFrame, cột cụ thể, nhiều cột thành numpy. dtype hoặc kiểu Python [int, string, float, date, datetime]