BaselineRemoval软件包用于背景荧光/噪声去除

问题描述

我正在尝试使用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))