2017-12-28 11 views
1

をフロートするパンダにデータフレームを変換:私はここで間違っ私は(彼らは文字列または空の文字列として数値である)文字列から浮いて私のデータフレーム内のデータ型を変換することはできません

calcMeanPrice_df = dessertApples_df.iloc[:, 5:17]  #slice of columns 

for col in calcMeanPrice_df:       #iterate columns 
    pd.to_numeric(col, errors = 'coerce')    #attempt to convert to numeric 

calcMeanPrice_df.dtypes        #return data column types 

Out[21]: 
4  object 
5  object 
6  object 
7  object 
8  object 
9  object 
10 object 
11 object 
12 object 
13 object 
14 object 
15 object 
dtype: object 

何をしているのですか?

+1

'to_numeric'がインプレース動作しません、あなたは –

答えて

2

仮定DATAFRAME:

df = pd.DataFrame({'a':['5','10'], 'b':['9','7']}) 

現在のデータ・タイプ:

In [391]: df.dtypes 
Out[391]: 
a object 
b object 

全体df列を変換した数値に:

df = df.apply(pd.to_numeric) 

結果:

In [393]: df.dtypes 
Out[393]: 
a int64 
b int64 

変換は数字のみに列を選択します。

In [396]: df = pd.DataFrame({'a':['5','10'], 'b':['9','7']}) 
In [397]: df['a'] = df['a'].apply(pd.to_numeric) 
In [398]: df.dtypes 
Out[398]: 
a  int64 
b object 
+0

本当にありがとうございました、その戻り値のどこかを割り当てる必要があります。 – Braide

+0

あなたは大歓迎です、@Braide!私は助けることができてうれしいです。 – FatihAkici

関連する問題