选取单列时如何让pandas返回DataFrame?R有drop=False,pandas有对应功能吗
问题解答:pandas选取单列时保留DataFrame结构的实现方法
pandas存在和R中drop=False完全对应的参数用法,主要在loc、iloc等显式索引器中支持。
具体用法示例
使用drop=False参数的标准写法
当你使用单标签选取单列时,追加drop=False即可强制保留二维DataFrame结构,不会默认降维为Series:
- 按列名选取:
df.loc[:, 'breakfast', drop=False] - 按列位置索引选取(假设
breakfast列在第2位,索引从0开始计数为1):df.iloc[:, 1, drop=False]
你已知的两种等价实现也完全可用
这两种写法和上述drop=False的效果完全一致,你可以根据代码可读性需求选择:
- 嵌套方括号传入列名列表:
df[['breakfast']](只要传入的是列表类型,哪怕只有1个元素,pandas都会返回DataFrame) - 显式转换为DataFrame:
pd.DataFrame(df['breakfast'])
额外注:为早餐按下F
内容的提问来源于stack exchange,提问作者Artem T
相关产品推荐
相关产品推荐

