3

I've a DataFrame "A" and a list of indices "I". I want to generate/get a DataFrame "B" which contains only the data in those indices "I" of the original DataFrame "A". How can I achieve this?

Assuming I = [1, 3] , I tried this A.filter(items=I, axis=0) is this the right way, or is there an even better way to do it.

Temp O'rary
  • 5,366
  • 13
  • 49
  • 109

1 Answers1

5

I think to need DataFrame.loc:

A = pd.DataFrame({
    'A': ['a','a','a','a','b','b','b','c','d'],
    'B': list(range(9))
})
print (A)
   A  B
0  a  0
1  a  1
2  a  2
3  a  3
4  b  4
5  b  5
6  b  6
7  c  7

I = [1,3]
B = A.loc[I]
print (B)
   A  B
1  a  1
3  a  3
jezrael
  • 822,522
  • 95
  • 1,334
  • 1,252