Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在iloc中同时传递列索引和范围_Python_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 在iloc中同时传递列索引和范围

Python 在iloc中同时传递列索引和范围,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,假设我有一个包含100列的数据框架。我只想为所有行选择0,1和51-100列。我现在正在尝试这样的事情: df.iloc[:,[0,1,range(51,101)]] 但这是一个错误: “使用序列设置数组元素” 虽然如果我只传递范围索引,而不传递列索引,它是有效的 我也尝试过: df.iloc[:,[0,1,51:102)]] 它显示的语法无效 有人能指出这里的错误吗。另外,请建议实现功能的替代方法 我认为您需要Concanate索引: df.iloc[:,np.r_[0,1,51:102]

假设我有一个包含100列的数据框架。我只想为所有行选择0,1和51-100列。我现在正在尝试这样的事情:

df.iloc[:,[0,1,range(51,101)]]
但这是一个错误:

“使用序列设置数组元素”

虽然如果我只传递范围索引,而不传递列索引,它是有效的

我也尝试过:

df.iloc[:,[0,1,51:102)]]
它显示的语法无效

有人能指出这里的错误吗。另外,请建议实现功能的替代方法

我认为您需要Concanate索引:

df.iloc[:,np.r_[0,1,51:102]]
样本:

df = pd.DataFrame([[0] * 10], columns=list('abcdefghij'))
print (df)
   a  b  c  d  e  f  g  h  i  j
0  0  0  0  0  0  0  0  0  0  0

print (df.iloc[:,np.r_[0,1,5:8]])
   a  b  f  g  h
0  0  0  0  0  0

您可以在不使用
numpy.r\u
的情况下执行此操作:

new_df=df.iloc[:,[0,1]+列表(范围(51101))]