Herramienta de desarrollo: cuaderno jupyter (Python3)
operación de índice de serie
import numpy as np
import pandas as pd
Un objeto Serie cuyo valor son 6 números de coma flotante generados por randn aleatorio, con valores de índice A, B, C, D, E, F
ser1 = pd.Series(np.random.randn(6),index=['A','B','C','D','E','F'])
ser1
A -1.917343
B -0.557361
C 0.508091
D 1.489047
E -0.596619
F -0.457463
dtype: float64
1. Utilice el método de índice de posición para obtener el valor de índice C
ser1.iloc[2]
0.5080909750172036
2. Utilice el nombre para acceder al índice C
ser1.loc['C']
0.5080909750172036
3. Utilice el índice de posición para acceder a los valores de índice C a E
ser1.iloc[2:5]
C 0.508091
D 1.489047
E -0.596619
dtype: float64
4. Utilice el índice de nombres para acceder a los valores de índice C a E
ser1.loc['C':'E']
C 0.508091
D 1.489047
E -0.596619
dtype: float64
5. Utilice el índice de ubicación para acceder a los valores del índice A, B, E, F
ser1.iloc[[0,1,4,5]]
A -1.917343
B -0.557361
E -0.596619
F -0.457463
dtype: float64
6. Utilice el nombre para acceder a los valores de índice A, B, E, F
ser1.loc[['A','B','E','F']]
A -1.917343
B -0.557361
E -0.596619
F -0.457463
dtype: float64
Operación de índice de DataFrame
Un objeto de marco de datos cuyo valor es un entero aleatorio, su índice de fila es A, B, C, D, E, F y el índice de columna es a, b, c, d, e, f
df1 = pd.DataFrame(np.random.randint(0,9,(6,6)),index=['A','B','C','D','E','F'],columns=['a','b','c','d','e','f'])
df1
|
a |
B |
C |
D |
mi |
F |
A |
3 |
8 |
3 |
4 |
3 |
5 |
B |
0 |
7 |
2 |
4 |
4 |
1 |
C |
0 |
7 |
3 |
4 |
0 |
8 |
D |
0 |
8 |
6 |
2 |
4 |
6 |
mi |
5 |
4 |
8 |
6 |
7 |
4 |
F |
3 |
5 |
1 |
8 |
0 |
1 |
1. Encuentre los datos cuyo índice de columna es f
df1.loc[:,'f']
A 5
B 1
C 8
D 6
E 4
F 1
Name: f, dtype: int32
2. Utilice el índice de nombres para encontrar los datos cuyo índice de columna sea un
df1.loc[:,'a']
A 3
B 0
C 0
D 0
E 5
F 3
Name: a, dtype: int32
3. Utilice el índice de posición para encontrar los datos cuyo índice de columna es b
df1.iloc[:,1]
A 8
B 7
C 7
D 8
E 4
F 5
Name: b, dtype: int32
4. Encuentre los datos cuyo índice de fila es A
df1.loc['A']
a 3
b 8
c 3
d 4
e 3
f 5
Name: A, dtype: int32
5. Utilice el índice de posición para encontrar los datos cuyo índice de fila es F
df1.iloc[5]
a 3
b 5
c 1
d 8
e 0
f 1
Name: F, dtype: int32
6. Utilice el índice de posición para encontrar los datos cuyo índice de fila es de B a E y el índice de columna es de a a e
df1.iloc[1:5,0:5]
|
a |
B |
C |
D |
mi |
B |
0 |
7 |
2 |
4 |
4 |
C |
0 |
7 |
3 |
4 |
0 |
D |
0 |
8 |
6 |
2 |
4 |
mi |
5 |
4 |
8 |
6 |
7 |
7. Utilice el índice de nombres para encontrar los datos cuyo índice de fila es B, D y el índice de columna es c, f
df1.loc[['B','D'],['c','f']]
8. Encuentre los datos cuyo índice de fila es C, E, F y el elemento de columna es b af
df1.loc['C':'F','b':'f']
|
B |
C |
D |
mi |
F |
C |
7 |
3 |
4 |
0 |
8 |
D |
8 |
6 |
2 |
4 |
6 |
mi |
4 |
8 |
6 |
7 |
4 |
F |
5 |
1 |
8 |
0 |
1 |
Operación de índice booleano
1. Un objeto de serie, entero aleatorio, rango 0-10, averigüe los datos mayores que 1
ser2 = pd.Series(np.random.randint(0,11,10))
ser2
0 3
1 4
2 10
3 3
4 7
5 3
6 7
7 6
8 8
9 0
dtype: int32
ser3 =ser2>1
ser2[ser3]
0 3
1 4
2 10
3 3
4 7
5 3
6 7
7 6
8 8
dtype: int32
2. Un objeto de marco de datos, entero aleatorio, rango 0-10, encuentra datos mayores que 3
df2 = pd.DataFrame(np.random.randint(0,11,(3,4)))
df2
|
0 |
1 |
2 |
3 |
0 |
0 |
6 |
10 |
10 |
1 |
0 |
0 |
9 |
4 |
2 |
5 |
0 |
6 |
1 |
df3 = df2>3
df2[df3]
|
0 |
1 |
2 |
3 |
0 |
Yaya |
6.0 |
10 |
10.0 |
1 |
Yaya |
Yaya |
9 |
4.0 |
2 |
5,0 |
Yaya |
6 |
Yaya |