问题描述
我正在尝试使用BaselineRemoval
软件包从某些拉曼光谱中去除背景荧光。在代码文档中,它指出输入的首选格式为input_array: A pandas dataframe column provided in input as dataframe['input_df_column']. It can also be a Python list object
我的例子-
df = pd.DataFrame(
{'Patient': [1,2,3,4,5,6],'Group': [1,1,2],'Samples': [list(np.random.randn(3).round(2)) for i in range(6)]
}
)
input_array = df['Samples']
polynomial_degree = 2
baSEObj = BaselineRemoval(input_array)
Modpoly_output = baSEObj.Modpoly(polynomial_degree)
但是,这给出了错误ValueError: setting an array element with a sequence.
不确定如何进行。
解决方法
应该执行一个简单的for
循环。
df = pd.DataFrame(
{'Patient': [1,2,3,4,5,6],'Group': [1,1,2],'Samples': [list(np.random.randn(3).round(2)) for i in range(6)]
}
)
input_array = df['Samples']
polynomial_degree = 2
for row in input_array:
print(BaselineRemoval(row).ModPoly(polynomial_degree))