Python是進行數據分析的一種出色語言,主要是因為以數據為中心的python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。
DataFrame.astype()
方法用於將pandas對象轉換為指定的dtype。astype()
函數還提供了將任何合適的現有列轉換為分類類型的函數。
DataFrame.astype()
當我們想將特定的列數據類型轉換為另一種數據類型時,該函數非常方便。不僅如此,我們還可以使用Python字典輸入一次更改多個列類型。字典中的鍵標簽與列名相對應,字典中的值標簽與我們希望列屬於的新數據類型相對應。
用法: DataFrame.astype(dtype, copy=True, errors=’raise’, **kwargs)
參數:
dtype:用一個numpy.dtype
或Python類型將整個pandas對象轉換為相同類型。或者,使用{col:dtype,…},其中col是列標簽,而dtype是numpy.dtype
或Python類型,以將DataFrame的一個或多個列轉換為column-specific類型。
copy:當copy = True時返回一個副本(要非常小心,將copy = False設置為數值的更改,然後可能會傳播到其他 Pandas 對象)。
errors:控製針對提供的dtype的無效數據引發異常。
引發:允許引發異常
忽略:禁止異常。錯誤返回原始對象
kwargs:keyword參數傳遞給構造函數
返回值:演員:來電者類型
有關在代碼中使用的CSV文件的鏈接,請單擊此處
範例1:轉換“權重”列數據類型。
# importing pandas as pd
import pandas as pd
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
# Printing the first 10 rows of
# the data frame for visualization
df[:10]
由於數據具有一些“nan”值,因此,為了避免出現任何錯誤,我們將刪除所有包含以下內容的行nan
值。
# drop all those rows which
# have any 'nan' value in it.
df.dropna(inplace = True)
# let's find out the data type of Weight column
before = type(df.Weight[0])
# Now we will convert it into 'int64' type.
df.Weight = df.Weight.astype('int64')
# let's find out the data type after casting
after = type(df.Weight[0])
# print the value of before
before
# print the value of after
after
輸出:
# print the data frame and see
# what it looks like after the change
df
範例2:一次更改多於一列的數據類型
改變Name
列到分類類型和Age
列為int64類型。
# importing pandas as pd
import pandas as pd
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
# Drop the rows with 'nan' values
df = df.dropna()
# print the existing data type of each column
df.info()
輸出:
現在,我們一次更改兩個列的數據類型。
# Passed a dictionary to astype() function
df = df.astype({"Name":'category', "Age":'int64'})
# Now print the data type
# of all columns after change
df.info()
輸出:
# print the data frame
# too after the change
df
輸出:
相關用法
- Python pandas.map()用法及代碼示例
- Python Pandas Timestamp.tz用法及代碼示例
- Python Pandas Series.str.contains()用法及代碼示例
- Python Pandas dataframe.std()用法及代碼示例
- Python Pandas Timestamp.dst用法及代碼示例
- Python Pandas dataframe.sem()用法及代碼示例
- Python Pandas DataFrame.ix[ ]用法及代碼示例
- Python Pandas.Categorical()用法及代碼示例
- Python Pandas.apply()用法及代碼示例
- Python Pandas TimedeltaIndex.contains用法及代碼示例
- Python Pandas Timestamp.now用法及代碼示例
- Python Pandas Series.str.pad()用法及代碼示例
- Python Pandas Series.take()用法及代碼示例
- Python Pandas dataframe.all()用法及代碼示例
- Python Pandas series.str.get()用法及代碼示例
注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas DataFrame.astype()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。