2016-12-26 121 views
1

Pandas DataFrameでRMSEを計算する簡単な例が必要です。そこサイクルで返す関数が真であると予測値の提供:Python Pandas:データフレームからRMSEを計算する簡単な例

def fun (data): 
    ... 
    return trueVal, predVal 

for data in set: 
    fun(data) 

そして、いくつかのコードがxが本当の価値とpで、次のデータフレームにこれらの結果を置くことは予測値である:

In [20]: d 
Out[20]: {'p': [1, 10, 4, 5, 5], 'x': [1, 2, 3, 4, 5]} 

In [21]: df = pd.DataFrame(d) 

In [22]: df 
Out[22]: 
    p x 
0 1 1 
1 10 2 
2 4 3 
3 5 4 
4 5 5 

質問

1)funの結果をdfデータフレームに挿入する方法は?

2)dfデータフレームを使用してRMSEを計算するにはどうすればよいですか?

+1

でこれを確認します。http://stackoverflow.com/questions/17197492/root-mean-をsquare-error-in-python – MYGz

+0

[ルート二乗誤差i n python](https://stackoverflow.com/questions/17197492/root-mean-square-error-in-python) –

答えて

3

質問1
これはデータが入っているフォーマットに依存します。そして、私はあなたがすでにあなたの本当の価値を持っている期待するので、この関数は通じちょうどパスです。

質問pandas
((df.p - df.x) ** 2).mean() ** .5

で2

numpy
(np.diff(df.values) ** 2).mean() ** .5

+1

は '((df.p-df.x)** 2)であってはいけません。パンダには平均()** .5があります。それは根元です**平均**二乗誤差? –

+0

@ ZhangTianbaoあなたは正しいです – piRSquared

関連する問題