0
爲了消除測量時的變化,我想編譯一個特定的範圍。熊貓:數值列名彙總,替換時出錯
例如,我想在整數的±0.1範圍內求和列名,並將其分配給一個整數列。但是,由於形狀錯誤,我無法替代。
我認爲這是由轉換列的類型引起的,但是我應該怎麼做呢?
謝謝。
import pandas as pd
import numpy as np
df = pd.DataFrame(data= np.arange(0,10000,1).reshape(100,100))
df.columns = np.arange(0,10,0.1)
print(df.head())
df.columns = df.columns.astype(float)
temp = df.columns.values
for n in np.arange(1, 9, 1):
l = n - 0.1
m = n + 0.1
calc_n = temp[np.where((temp >= l) & (temp <= m))]
calc = np.sum(df[df.columns.intersection(calc_n)], axis=1)
n_position = temp[np.where(temp == n)]
df[n_position] = calc.values
ValueError異常:形狀不匹配:形狀(100,)的值陣列不能被廣播到形狀(1100)的索引結果
df.iloc [:,計算值 - N [0]]。總結這是一個很好的解決方案。 下次我不會使用flot。 非常感謝。 –