titansarus
0
Q:

how to use loc and iloc in pandas

iloc slicing gives all the data upto the position that is passed as argument
loc gives all the data upto the label that is passed as argument
n = pd.Series([1,2,3,4],index = [0,1,2,3])
print("With iloc we got")
print(n.iloc[:2])
print("With loc we got")
print(n.loc[:2])

<Output>
With iloc we got
0    1
1    2
dtype: int64
With loc we got
0    1
1    2
2    3
dtype: int64
2
>>> df.iloc[[0, 1]]
     a    b    c    d
0    1    2    3    4
1  100  200  300  400
3
>>> df.iloc[0, 1]
2
0
iloc - default indexes (system generated)
loc - table indexes or we manually given indexes 
0
>>> mydict = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},
...           {'a': 100, 'b': 200, 'c': 300, 'd': 400},
...           {'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000 }]
>>> df = pd.DataFrame(mydict)
>>> df
      a     b     c     d
0     1     2     3     4
1   100   200   300   400
2  1000  2000  3000  4000
0

New to Communities?

Join the community