将双方括号转为单个

时间:2017-05-03 10:26:39

标签: python numpy

如何将numpy数组的双方括号删除为单个方括号,如列表?

[[0, 3.49, 0, 4.55]]

期望的输出

[0,3.49,0,4.55]

我搜索了SO寻找numpy数组列表,方括号numpy,无法找到答案

to_list()只在值

中添加逗号

3 个答案:

答案 0 :(得分:5)

如果将它们编码为列表,则可以使用[0]元素

答案 1 :(得分:1)

你确定它是一个numpy阵列吗?

我认为只需使用

my_list[0] 

获取第一个元素(第一个元素是[0,3.49,0,4.55]

答案 2 :(得分:0)

我遇到了同样的问题,引用 [0] 不起作用(它只会选择第一个元素,在本例中为 [0])

我试图设置一种方法来自动化这里的代码中的迭代器“i” https://www.datasklr.com/ols-least-squares-regression/interaction-effects-and-polynomials-in-multiple-linear-regression

所以我试过了

X_inter.iloc[:, np.array(pd.concat([pd.DataFrame(range(0,len(all_data.iloc[:,2:].columns))),pd.DataFrame(pd.Series(i))]).values)]

这会抛出错误“缓冲区的维度数错误(预期为 1,得到 2)”

我的 np.array 看起来像这样

array([[0],
       [1],
       [2],
       [3],
       [4],
       [5],
       [6],
       [7],
       [8],
       [9]])

在这里找到了一个有效的解决方案

https://www.quora.com/How-can-I-drop-brackets-in-a-Python-list-in-order-to-go-from-1-2-3-to-1-2-3

test_list = np.array(pd.concat([pd.DataFrame(range(0,len(all_data.iloc[:,2:].columns))),pd.DataFrame(pd.Series(i))]).values)

flattened = [] 
for sublist in test_list: 
    for val in sublist: 
        flattened.append(val) 

X_inter.iloc[:, flattened]