Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.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 cars.iloc[[3,0]]、cars.iloc[[3]、[0]]和cars.iloc[3,0]之间的差异_Python_Python 3.x_Pandas - Fatal编程技术网

Python cars.iloc[[3,0]]、cars.iloc[[3]、[0]]和cars.iloc[3,0]之间的差异

Python cars.iloc[[3,0]]、cars.iloc[[3]、[0]]和cars.iloc[3,0]之间的差异,python,python-3.x,pandas,Python,Python 3.x,Pandas,我正在研究熊猫和汽车(csv文件)。我运行了以下命令: 1) cars.iloc[[3,0]] Out[2]: cars_per_cap country drives_right 在18个印度是假的 美国809美国真实 2) cars.iloc[[3],[0]] Out[7]: cars_per_cap 18岁 3) cars.iloc[3,0] Out[9]: 18 我在第一个和第三个命令中感到困惑,我检查了all的类型,前两个是数据帧,第三个不是。然而,为什么我得到的

我正在研究熊猫和汽车(csv文件)。我运行了以下命令:

1) cars.iloc[[3,0]]

Out[2]: 
cars_per_cap        country drives_right
在18个印度是假的 美国809美国真实

2) cars.iloc[[3],[0]]

Out[7]: 
cars_per_cap
18岁

3) cars.iloc[3,0]

Out[9]: 18
我在第一个和第三个命令中感到困惑,我检查了all的类型,前两个是数据帧,第三个不是。然而,为什么我得到的第一和第三输出不同?任何帮助都将不胜感激

df = pd.DataFrame({'A':list('abcdef'),
                   'B':[4,5,4,5,5,4],
                   'C':[7,8,9,4,2,3],
                   'D':[1,3,5,7,1,0],
                   'E':[5,3,6,9,2,4],
                   'F':list('aaabbb')}, index=range(10, 16))

print (df)
    A  B  C  D  E  F
10  a  4  7  1  5  a
11  b  5  8  3  3  a
12  c  4  9  5  6  a
13  d  5  4  7  9  b
14  e  5  2  1  2  b
15  f  4  3  0  4  b
选择3.0.行,所有列:

print (df.iloc[[3,0]])
#same as 
#print (df.iloc[[3,0], :])
    A  B  C  D  E  F
13  d  5  4  7  9  b
10  a  4  7  1  5  a
选择3.0.列,所有行:

print (df.iloc[:, [3,0]])

    D  A
10  1  a
11  3  b
12  5  c
13  7  d
14  1  e
15  0  f
选择3。行0。列-嵌套列表创建一个项目系列

print (df.iloc[[3],[0]])
    A
13  d
如上所述,仅在没有嵌套列表的情况下获取标量:

print (df.iloc[3,0])
d
另一项选择:

选择3.0.行,0.列-秒
[]
创建一列
数据帧

print (df.iloc[[3, 0],[0]])
    A
13  d
10  a
。。。如果省略它,则获得
系列

print (df.iloc[[3, 0], 0])
13    d
10    a
Name: A, dtype: object
如果要选择一行多列:

print (df.iloc[[0], [3, 0]])
    D  A
10  1  a

print (df.iloc[0, [3, 0]])
D    1
A    a
Name: 10, dtype: object
print (df.iloc[[3,0], [3,0]])
    D  A
13  7  d
10  1  a
最后,请参见LCT多行多列:

print (df.iloc[[0], [3, 0]])
    D  A
10  1  a

print (df.iloc[0, [3, 0]])
D    1
A    a
Name: 10, dtype: object
print (df.iloc[[3,0], [3,0]])
    D  A
13  7  d
10  1  a