本文介绍了切片1行 pandas 数据帧时,切片将变成一系列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
为什么当我对仅包含1行的pandas数据框进行切片时,切片会变成pandas系列?
如何保存数据框?
Why when I slice a pandas dataframe containing only 1 row, the slice becomes a pandas series?How can I keep it a dataframe?
df=pd.DataFrame(data=[[1,2,3]],columns=['a','b','c'])
df
Out[37]:
a b c
0 1 2 3
a=df.iloc[0]
a
Out[39]:
a 1
b 2
c 3
Name: 0, dtype: int64
推荐答案
重新转换回DataFrame的中间步骤,在建立索引时使用双括号:
To avoid the intermediate step of re-converting back to a DataFrame, use double brackets when indexing:
a = df.iloc[[0]]
print(a)
a b c
0 1 2 3
速度:
%timeit df.iloc[[0]]
192 µs per loop
%timeit df.loc[0].to_frame().T
468 µs per loop
这篇关于切片1行 pandas 数据帧时,切片将变成一系列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!