當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Pandas DataFrame Strings轉Floats用法及代碼示例


在本文中,我們將研究在 pandas 數據幀中將字符串轉換為浮點數的不同方法。現在,讓我們創建一個以“年份”和“通貨膨脹率”為列的 DataFrame 。

Python3


# importing pandas library
import pandas as pd
  
# dictionary
Data = {'Year':['2016', '2017', 
                 '2018', '2019'],
        'Inflation Rate':['4.47', '5', 
                           '5.98', '4.1']}
# create a dataframe
df = pd.DataFrame(Data)
  
# show the dataframe
print (df)
  
# show the datatypes
print(df.dtypes)

輸出:

dataframe

方法一:使用Python Pandas DataFrame.astype()用法及代碼示例



該方法用於將 pandas 對象轉換為指定的 dtype。

用法:DataFrame.astype(self:~ FrameOrSeries, dtype, copy:bool = True, errors:str = ‘raise’)
 

返回值:cast:調用者的類型

例:在此示例中,我們將“通貨膨脹率”列的每個值轉換為浮點數。

Python3


# importing pandas library
import pandas as pd
  
# dictionary
Data = {'Year':['2016', '2017', 
                 '2018', '2019'],
        'Inflation Rate':['4.47', '5', 
                           '5.98', '4.1']}
# create a dataframe
df = pd.DataFrame(Data)
  
# converting each value 
# of column to a string
df['Inflation Rate'] = df['Inflation Rate'].astype(float)
  
# show the dataframe
print(df)
  
# show the datatypes
print (df.dtypes)

輸出:

dataframe string to float

方法二:使用Python pandas.to_numeric用法及代碼示例函數。



該函數用於將參數轉換為數值類型。

用法:pandas.to_numeric(arg, errors=’raise’, downcast=None)
 

返回值:如果解析成功,則為數字。請注意,返回類型取決於輸入。如果是 Series,則為 Series,否則為 ndarray。

範例1:在此示例中,我們將“通貨膨脹率”列的每個值轉換為浮點數。

碼:

Python3


# importing pandas library
import pandas as pd
  
# creating a dictionary
Data = {'Year':['2016', '2017', 
                 '2018', '2019'],
          'Inflation Rate':['4.47', '5', 
                             '5.98', '4.1']}
# create a dataframe
df = pd.DataFrame(Data)
  
# converting each value of column to a string
df['Inflation Rate'] = pd.to_numeric(df['Inflation Rate'])
  
# show the dataframe
print(df)
  
# show the data types
print (df.dtypes)

輸出:

dataframe string to float

範例2:有時,我們可能沒有將浮點值表示為字符串。因此,pd.to_numeric() 函數將顯示錯誤。為了消除這個錯誤,我們可以使用errors='coerce',將這個位置的值轉換為NaN。

代碼

Python3


# importing pandas as pd
import pandas as pd
  
# dictionary
Data = {'Year':['2016', '2017',
                 '2018', '2019'],
         'Inflation Rate':['4.47', '5', 
                           'No data', '4.1']}
  
# create a dataframe
df = pd.DataFrame(Data)
  
# converting each value of column to a string
df['Inflation Rate'] = pd.to_numeric(df['Inflation Rate'],
                                     errors = 'coerce')
  
# show the dataframe
print(df)
  
# show the data types
print (df.dtypes)

輸出:

dataframe string to float with error handling

注意:字符串數據類型顯示為對象。




相關用法


注:本文由純淨天空篩選整理自parasmadan15大神的英文原創作品 How to Convert Strings to Floats in Pandas DataFrame?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。