假设熊猫数据框的格式为
col0 col1 col2 col3
---------------------
a0 a1 a2 a3
b0 b1 None None
c0 c1 c2 c3
希望能够获得这些列的某些指定选择的列表或熊猫系列。
in: stack(df[['col1', 'col3']])
out:
a0
a3
b0
c0
c3
(请注意,在此示例中,None
值被跳过)。使用stack()进行了尝试,但似乎并不需要。关于如何将数据框列转换为这种形式的任何建议或建议都将受到赞赏(最终希望获得不同值的直方图(通过https://stackoverflow.com/a/28419258/8236733)。
答案 0 :(得分:2)
您可以使用.unstack()
将它们变成MultiIndex
版的系列,删除空值,然后仅使用np.array
或列表:
In [69]: df[['col1', 'col3']].unstack().dropna().values
Out[69]: array(['a1', 'b1', 'c1', 'a3', 'c3'], dtype=object)
In [70]: df[['col1', 'col3']].unstack().dropna().tolist()
Out[70]: ['a1', 'b1', 'c1', 'a3', 'c3']