2017-07-17 6 views
0

コマンドパンダのデータフレーム(列の乗算)を2列に乗算し、その結果を新しい列に格納する方法は?

df_main['Ranking'] = df_main['Porosity']*['Permeability']ができます -

TypeError: can't multiply sequence by non-int of type 'str'

attacehd画像(https://i.stack.imgur.com/0Asu3.png)はより多くの情報を持っています。スニペットがi.stack.imgur.com/ehqF5.pngである私のコード)

さらに詳しい情報:https://i.stack.imgur.com/0Asu3.png

+0

をdf_mainを[ '浸透性'] '? – SethMMorton

答えて

0

まず、あなたが(そうでないあなたがそれらを乗算することはできません)山車に2列の列タイプに変換する必要があります。

df_main[['Porosity', 'Permeability']] = df_main[['Porosity', 'Permeability']].astype(float) 

を次にあなたが乗算を経由して新しい列を定義することができます:あなたは、次のようにそれを行うことができます*あなたは[ '気孔率'] = df_main [ 'ランキング'] df_main `てみました

df_main['Ranking'] = df_main['Porosity']*df_main['Permeability'] 
+1

'.astype(float)'ステップが必要であるかどうか分かりません。問題は、文字列のみを含む単一要素のリストで列を掛けようとしていたことだと思います。 – SethMMorton

+1

@SethMMorton質問のimgur図では、製品の構文が正しいようです。 –

+0

Miriamの答えを修正してみましたが、次のエラーが発生しました。値エラー:文字列を浮動小数点に変換できませんでした:'12 .863486 2 ' –

関連する問題