我有一个像Nx5形状的熊猫DataFrame
['','','A','','']
['','C','','','']
['','A','','','']
['','','','T','']
.
.
.
我想将其转换为Nx1形状以获得非空值
['A']
['C']
['A']
['T']
.
.
.
那怎么办?
您可以要求"".join
每一行:
df.apply("".join, axis=1)
如果不确定每一行只有一个非空值,则以下方法更好:
import pandas as pd
df = pd.DataFrame(
[['','','A','',''],
['','C','','',''],
['','A','','',''],
['','','','T','']]
)
s = df.stack()
print s[s!=""]
输出:
0 2 A
1 1 C
2 1 A
3 3 T
dtype: object
超过一栏:
r = s[s!=""]
r.groupby(level=0).apply(pd.DataFrame.reset_index, drop=True).unstack()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句