我想應用一個函數來爲每一行在pandas中對數據幀的slice進行排序,併爲每一行返回一個數據幀,其中計算了所計算的片段的值和數量。 因此,例如如何在pandas切片上應用lambda函數,並返回與輸入數據幀相同的格式?
df = pandas.DataFrame(numpy.round(numpy.random.normal(size=(2, 10)),2))
f = lambda x: (x - x.mean())
我想是拉姆達函數f應用列0-5,從5列到10 我這樣做:
a = pandas.DataFrame(f(df.T.iloc[0:5,:])
但是這僅僅是對第一個切片......如何在代碼中包含第二個切片,以便我的結果輸出幀與輸入幀完全一樣 - 只是每個數據點都會更改爲其值減去相應切片的平均值。
我希望它是有道理的..什麼是正確的方式與此?
謝謝。
我在想,我能爲第二層'B = pandas.DataFrame(F做同樣的(df.T.iloc [5 ::,:])'然後將兩個幀連接起來,然後再次轉置,但是'concat'需要列表或字典而不是DataFrame .. – oaklander114
你可以編輯你提供的'df',它會拋出'SyntaxError' – Anzel
好吧,我做了,忘了支架。謝謝 – oaklander114