以下のようなDataFrameに対し、z列にy列の3値ずつの平均値を順番に代入する繰り返し処理を書きたいのですが、for文の書き方がわからず困っています。
ご指導いただけますと幸いです。
現在得られるDataframe
||x|y|z|
|:--|:--:|--:|
|1|0.1|0.1||
|2|-0.1|0.1||
|3|0.2|0.2||
|4|-0.2|0.2||
|5|0.4|0.4||
|6|-0.4|0.4||
求めたいDataframe
||x|y|z|
|:--|:--:|--:|
|1|0.1|0.1|0.2(y1y3の平均)|y3の平均)|
|2|-0.1|0.1|0.2(y1
|3|0.4|0.4|0.2(y1y3の平均)|y6の平均)|
|4|-0.2|0.2|0.3(y4
|5|0.4|0.4|0.3(y4y6の平均)|y6の平均)|
|6|-0.3|0.3|0.3(y4
x,yのデータについては以下のように代入しています。
python
1import pandas as pd 2import numpy as np 3raw=pd.read_csv('Users/~~~~~/raw.csv',header=0) 4 5ds=pd.DataFrame(index=[],) 6ds['x']=raw['x'] 7ds['y']=np.fabs(ds['x'])
zについてはまず3値ずつデータを出そうとして以下のようなコードを書いてみたのですが、これだとy2とy3のデータが得られるだけというような状況です。
python
1for i in range(3): 2 df=ds['y'][i:i*2]
ご指導よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/03 07:55