use*_*322 1 python r multiple-columns pandas
我是一名 R 用户,目前正在学习 Python,我正在尝试将一种选择 R 中使用的列的方法复制到 Python 中。
在 R 中,我可以像这样选择多个列:
df[,c(2,4:10)]
Run Code Online (Sandbox Code Playgroud)
在 Python 中,我知道 iloc 是如何工作的,但我无法在单个列号和一组连续的列号之间进行拆分。
这行不通
df.iloc[:,[1,3:10]]
Run Code Online (Sandbox Code Playgroud)
所以,我必须像这样删除第二列:
df.iloc[:,1:10].drop(df.iloc[:,1:10].columns[1] , axis=1)
Run Code Online (Sandbox Code Playgroud)
有没有更有效的方法可以在 Python 中从 R 复制该方法?
您可以使用np.r_它接受混合切片符号和标量索引并将它们连接为一维数组:
import numpy as np
df.iloc[:,np.r_[1, 3:10]]
Run Code Online (Sandbox Code Playgroud)
df = pd.DataFrame([[1,2,3,4,5,6]])
df
# 0 1 2 3 4 5
#0 1 2 3 4 5 6
df.iloc[:, np.r_[1, 3:6]]
# 1 3 4 5
#0 2 4 5 6
Run Code Online (Sandbox Code Playgroud)
由于np.r_产生:
np.r_[1, 3:6]
# array([1, 3, 4, 5])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
263 次 |
| 最近记录: |