[Turn] Instrucciones para usar 159 métodos comunes de la biblioteca Python pandas

 

Instrucciones para 159 métodos de uso común de la biblioteca Python pandas

La biblioteca Pandas está diseñada para el análisis de datos y es un factor importante que hace de Python un entorno de análisis de datos potente y eficiente.

Uno, estructura de datos de Pandas

1 、 importar pandas como pd

importar numpy como np

importar matplotlib.pyplot como plt

2. La serie S1 = pd.Series (['a', 'b', 'c']) es una estructura de datos compuesta por un conjunto de datos y un conjunto de índices (índices de fila)

3. S1 = pd.Series (['a', 'b', 'c'], index = (1,3,4)) especifique el índice

4. S1 = pd.Series ({1: 'a', 2: 'b', 3: 'c')) Especifique el índice en forma de diccionario

5. S1.index () devuelve el índice

6. Valor de retorno de S1.values ​​()

7. Df = pd.DataFrame (['a', 'b', 'c']) Un marco de datos es una estructura de datos compuesta por un conjunto de datos y dos conjuntos de índices (índices de fila y columna)

8. Df = pd.DataFrame ([[a, A], [b, B], [c, C]], columnas = ['minúsculas', 'mayúsculas'], índice = ['uno', 'dos' ,'Tres'])

Columms es el índice de la columna y el índice es el índice de la fila.

9. pip install -i  https://pypi.tuna.tsinghua.edu.cn/simple  pyspider Tsinghua mirror

10. data = {'minúsculas': ['a', 'b', 'c'], 'mayúsculas': ['A', 'B', 'C']} diccionario entrante

Df = Pd.DataFrame (datos)

11 、 Df.index () df.columns ()

Dos, lee los datos

12 、 df = pd.read_excel (r'C: \ usuario \ ... xlsx ', sheet_name =' sheet1 ') 或

Pd.read_excel (r'C: \ user \ ... xlsx ', sheet_name = 0) leer hoja de Excel

13 、 Pd.read_excel (r'C: \ usuario \ ... xlsx ', index_col = 0, encabezado = 0)

index_col especifica el índice de la fila, el encabezado especifica el índice de la columna

14. pd.read_excel (r'C: \ user \ ... xlsx ', usecols = [0,1]) importa la columna especificada sin index_col y encabezado

15. pd.read_tablel (r'C: \ user \ ... txt ', sep =' ') Importa un archivo txt y sep especifica cuál es el separador

16. df.head (2) muestra las dos primeras filas, las primeras 5 filas se muestran de forma predeterminada

17. df.shape muestra varias filas y columnas de datos, excluyendo los índices de filas y columnas

18. http://df.info ()  puede ver el tipo de datos en la tabla

19. df.describe () puede obtener el valor de distribución (suma, promedio, varianza, etc.) de los dedos de tipo numérico en la tabla

Tres, preprocesamiento de datos

20. http://df.info ()  puede mostrar qué datos de la tabla están vacíos

21. El método df.isnull () puede determinar qué valor es un valor faltante, si falta, devuelve Verdadero, de lo contrario es Falso

22, df.dropna () elimina las filas con valores faltantes de forma predeterminada

23. df.dropna (how = 'all') elimina las filas con todos los valores vacíos, y las filas con no todos los valores vacíos no se eliminarán

24, df.fillna (0) llena todos los valores vacíos con 0

25. df.fillna ({'sex': 'male', 'age': '30'}) Complete male con un valor nulo en la columna de género y complete con 30 para la edad

26. df.drop_duplicates () comprueba todos los valores en busca de valores duplicados de forma predeterminada y conserva el valor de la primera fila

27. df.drop_duplicates (subset = 'gender') retiene la primera fila para la consulta de valor duplicado en la columna de género

28. df.drop_duplicates (subset = ['gender', 'company'], keep = 'last') revisa el género y la compañía

La configuración de mantener está predeterminada en la primera (mantener la primera), se puede configurar para la última (mantener la última) o False (no conservar la parte)

29, df ['ID']. Dtype ver el tipo de datos de la columna de ID

30. df ['ID']. Astype ('float') convierte el tipo de datos de la columna de ID en tipo flotante

31. Tipos de datos: int, float, object, string, unicode, datetime

32. df ['ID'] [1] Los segundos datos de la columna ID

33, df.columns = ['mayúsculas', 'minúsculas', 'chino'] agregar índice de columna para la tabla no indexada

34, df.index = [1,2,3] Agregar índice de fila

35. df.set_index ('número') especifica la columna que se utilizará como índice de fila

36, df.rename (index = ('order number': 'new order number', 'customer name': 'new customer name')) para cambiar el nombre del índice de fila

37, df.rename (column = (1: 'one', 2: 'two')) renombrar el índice de la columna

38. df.reset_index () convierte todos los índices en columnas por defecto

39, df.reset_index (level = 0) convierte el índice de nivel 0 en una columna

40, df.reset_index (drop = True) elimina el índice original

Cuatro, selección de datos

41. df [['ID', 'name']] es necesario cargar varios nombres de columna en la lista

42, df.iloc [[1,3], [2,4]] seleccionar datos con número de fila y columna

43. df.iloc [1,1] selecciona los datos de la 3ª fila y 2 columnas de la tabla, la primera fila tiene como valor predeterminado el índice de la columna

44, df.iloc [:, 0: 4] #Obtener el valor de la columna 1 a la columna 4

45. df.loc ['一'] #loc usa el nombre de la fila para seleccionar los datos de la fila, el formato es Serie, pero se puede acceder a él en forma de lista

46. ​​df.loc ['一'] [0] o df.loc ['一'] ['número de serie']

47. df.iloc [1] #iloc seleccionar datos de fila con número de fila

48. df.iloc [[1,3]] # Numeración de filas múltiples para seleccionar datos de filas, use la lista para encapsular, de lo contrario se convierte en selección de filas y columnas

49. df.iloc [1: 3] #Seleccione la segunda y cuarta filas

50. df [df ['age'] <45] # Agregue la condición de juicio para devolver todos los datos que cumplen con las condiciones, y la columna de edad no está limitada

51. df [(df ['edad'] <45) & (df ['ID'] <4)] # Juzgar datos de selección de múltiples condiciones

52. df.iloc [[1,3], [2,4]] es equivalente a df.loc [['一', '二'], ['age', 'ID']] #loc es el nombre , iloc es el número

53. df [df ['age'] <45] [['age', 'ID']] # primero seleccione las filas a través de las condiciones de edad y luego especifique las columnas a través de diferentes índices

54. df.iloc [1: 3,2: 4] # Índice de corte

Cinco, operaciones numéricas

55. df ['edad']. Reemplace (100,33) # Reemplace 100 en la columna de edad con 33

56. df.replace (np.NaN, 0) # es equivalente a fillna (), donde np.NaN es la representación del valor predeterminado en python

57. df.replace ([A, B], C) # Reemplazo de varios a uno, A y B se reemplazan con C

58. df.replace (('A': 'a', 'B': 'b', 'C': 'c')) # Reemplazo de varios a varios

59. df.sort_values ​​(por = ['Número de formulario de solicitud'], ascendente = Falso) #La columna del número de formulario de solicitud se ordena en orden descendente y Ture se ordena en orden ascendente (predeterminado)

60. df.sort_values ​​(by = ['Application Form Number'], na_position = 'first') # La columna del número de formulario de solicitud se organiza en orden ascendente y los valores faltantes se clasifican en primer lugar.

El valor que falta por defecto está en el último dígito.

61. df.sort_values ​​(por = ['col1', 'col2'], ascendente = [False, True]) # Clasificación de varias columnas

62. df ['Ventas']. Rango (método = 'primero') # Clasificación de ventas (sin clasificación), el método tiene primero \ min \ max \ promedio

63. df.drop (['Ventas', 'ID'], eje = 1) #Borrar la columna, directamente el nombre de la columna

64. df.drop (df.columns [[4,5]], axis = 1) #Eliminar columna, que es el número

65. df.drop (columnas = ['Ventas', 'ID']) # De esta manera, para eliminar columnas, no es necesario escribir axis = 1

66, df.drop (['a', 'b'], axis = 0) #Borrar la fila, directamente el nombre de la columna

67. df.drop (df.index [[4,5]], axis = 0) #Eliminar fila, que es el número

68. df.drop (index = ['a', 'b']) # Elimina filas de esta manera, no necesitas escribir axis = 0

69. df ['ID']. Value_counts () # Cuente el número de veces que aparecen los datos en la columna de ID

70. df ['ID']. Value_counts (normalize = Ture, sort = False) # Cuente el número de ocurrencias de datos en la columna ID y ordénelas en orden descendente

71. df ['ID']. Unique () # Obtiene el valor único de la columna

72. df ['edad']. Isin (['a', 11]) # Compruebe si esta columna contiene a o 11

73. pd.cut (df ['ID'], bins = [0,3,6,10]) # Utilice bins para especificar la partición de corte

74. pd.qcut (df ['ID'], 3) La columna #ID se divide en 3 partes, el número de datos en cada parte es lo más coherente posible

75. df.insert (2, 'product', ['book', 'pen', 'calculator']) # inserta la tercera columna

76. df ['producto'] = ['libro', 'bolígrafo', 'calculadora']) # Insertar una nueva columna, al final de la tabla

77, df.T intercambio de filas y columnas

78. df.tack () # Convertir datos tabulares en datos de árbol

79. df.set_index (['ID', 'nombre']). Stack (). Reset_index () # Conversión de tabla amplia a tabla de crecimiento, primero establezca la columna común como índice de fila y luego las otras columnas

Transformar en datos de árbol y luego restablecer el índice de fila

80. df.melt (id_vars = ['ID', 'name'], var_name = 'year', value_name = 'sale') # El parámetro id_var indica que la tabla ancha se convierte en una tabla larga.

Columna modificada, el parámetro var_name representa el índice de la columna original convertido al nombre de la columna correspondiente al índice de la fila, value_name representa el nombre de la columna correspondiente al valor del nuevo índice

81. df ['C1']. Apply (lambda x: x + 1) #equivalente a map (), pero necesita cooperar con lambda

82, df.applymap (lambda x: x + 1), realiza la misma operación de función en todos los datos de la tabla

Seis, cálculo de datos

83. df ['ID'] + Df ['ID'] # puede sumar, restar, multiplicar y dividir

84. df ['ID']> Df ['ID'] # puede realizar operaciones de comparación como> <==! =

85. df.count () # Cuente el número de valores no nulos en cada columna

86, df.count (axis = 1) #Cuenta el número de valores no vacíos en cada fila

87. df ['ID']. Count () # Cuente el número de valores no vacíos en la columna especificada

88. df.sum (axis = 1) # Resultado de la suma de cada columna / fila

89, df.mean (axis = 1) #Cada columna / fila promedio

90, df.max (axis = 1) #Encuentre el valor máximo para cada columna / fila

91, df.min (eje = 1) #Encuentre el valor mínimo para cada columna / fila

92, gl.median (eje = 1) # Encuentre la mediana para cada columna / fila

93, df.mode (axis = 1) #El valor más frecuente en cada columna / fila

94, df.var (axis = 1) # Encuentra la varianza para cada columna / fila

95, df.std (axis = 1) # Encuentre la desviación estándar para cada columna / fila

96, gl cuantil (0.25) # Hallar 1/4 cuantil, 0.5, 0.75 se puede obtener cuantil igual

97, df.corr () # Encuentra la correlación en toda la tabla DataFrame

Siete, series de tiempo

98 、 desde fecha y hora importar fecha y hora

99, datatime.now () # Devuelve la hora actual año, mes, día, hora, minuto y segundo

100. datatime.now (). Year # devuelve el año, puede ser .month \ .day

101, datatime.now (). Weekday () - 1 # devuelve el día de la semana

102, datatime.now (). Isocalendar () # Devuelve el número de la semana

103. (2018, 41, 7) # El séptimo día de la 41a semana de 2018

104, datatime.now (). Date () # Solo devuelve año, mes y día

105, datatime.now (). Time () # Devuelve solo el tiempo

106 、 datatime.now (). Strftime ('% Y-% m-% d% H:% M:% S') # 返回 2020-03-13 09:09:12

107 、 de dateutil.parer import parse

108, parse (str_time) #Convierte la hora de la cadena en un formato de hora

109, pd.Datetimeindex (['2020-02-03', 2020-03-05 ']) # Establecer índice de tiempo

110, data ['2018'] # Obtenga los datos de 2018

111, data ['2018-01'] # Obtenga los datos de enero de 2018

112. data ['2018-01-05': '2018-01-15'] # Obtener datos para este período

113. Procesamiento de tablas de índices no temporales

114. df [df ['Hora de oferta'] == fecha y hora (2018,08,05)]

115. df [df ['Hora de oferta']> fecha y hora (2018,08,05)]

116. df [(df ['Deal time']> datetime (2018,08,05)) & (df ['Deal time'] <datetime (2018,08,15))]

117 、 cha = datatime (2018,5,21,19,50) -datatime (2018,5,18,17,50)

118, cha.days # La diferencia horaria de los días que regresan

119, cha.seconds # Devuelve la diferencia de tiempo en segundos

120, cha.seconds / 3600 # Devuelve la diferencia horaria en horas

121, datatime (2018,5,21,19,50) + timedelta (días = 1) # retroceder un día

122, datatime (2018,5,21,19,50) + timedelta (segundos = 20) # retrocede 20 segundos

123, datatime (2018,5,21,19,50) -timedelta (días = 1) # avanza un día

Ocho, mesa pivotante

124, df.groupby ('Clasificación del cliente'). Count () # Calcular el número después de la clasificación del cliente

125. df.groupby ('Clasificación del cliente'). Sum () # Operación de suma después de la clasificación del cliente

126, df.groupby ('clasificación de cliente', 'clasificación de área'). Sum () # Operación de suma después de la clasificación de varias columnas

127, df.groupby ('clasificación de cliente', 'clasificación de área') ['ID']. Sum () # Operación de suma de ID después de la clasificación de varias columnas

128. df ['ID'] # DataFrame saca una columna es el tipo de serie

129. df.groupby (df ['ID']). Sum () es equivalente a df.groupby ('ID'). Sum ()

130. df.groupby ('clasificación de clientes'). Aggregate (['sum', 'count'] # aggregate puede realizar múltiples métodos de agregación

131, df.groupby ('clasificación del cliente'). Aggregate ({'ID': 'count', 'sales': 'sum'})

132, # agregado puede realizar diferentes operaciones de resumen para diferentes columnas

133. df.groupby ('Clasificación de clientes'). Sum (). Reset_index () # Después de agrupar y resumir, restablezca el índice y conviértase en un DataFrame estándar

134 、 pd.pivot_table (datos, valores, índice, columnas, aggfunc, fill_value, margins, dropna, margins_name)

135. Tabla dinámica, datos: tabla de datos df, valores: valores, índice: índice de fila, columnas: índice de columna, aggfunc: tipo de cálculo de valores, fill_value: método de llenado para valores vacíos; márgenes: si hay una columna total; margins_name : El nombre de la columna de la columna total

136, pd.pivot_table (df, values ​​= ['ID', 'sales'], index = 'clasificación del cliente', columnas = 'area', aggfunc = {'ID': 'count', 'sales': 'sum ')), fill_value = 0, margins = Ture, dropna = None, margins_name =' Total ')

Nueve, empalme de varias mesas

137, pd.merge (df1, df2) # Encuentra automáticamente columnas comunes en las dos tablas para empalmar por defecto

138, pd.merge (df1, df2, on = "número de estudiante") # on para especificar la columna de conexión, si la columna de conexión es una columna pública

139, pd.merge (df1, df2, on = ['número de estudiante', 'nombre'] # on para especificar la columna de conexión, si la columna de conexión es una columna pública

140, pd.merge (df1, df2, left_on = 'student number'right_on =' number ') #Utilice las teclas izquierda y derecha para especificar cuándo el nombre de la clase es diferente de la columna pública

141, pd.merge (df1, df2, left_index = 'student number'right_index =' number ') # Cuando las columnas públicas de las dos tablas son todas columnas de índice

142, pd.merge (df1, df2, left_index = 'student number'right_on =' number ') # Cuando hay una columna pública, la columna de índice es una columna normal

143, pd.merge (df1, df2, on = 'student number', how = 'inner') # devuelve el empalme de valor público correspondiente en la columna pública (combinación interna)

144, pd.merge (df1, df2, on = 'student number', how = 'left') # devuelve el valor correspondiente de la tabla izquierda en la columna pública (conexión izquierda)

145, pd.merge (df1, df2, on = 'student number', how = 'right') # devuelve el valor correspondiente de la tabla derecha en la columna pública (conexión derecha)

146, pd.merge (df1, df2, on = 'student number', how = 'external') # devuelve todos los valores correspondientes en la columna pública (combinación externa)

147. pd.concat ([df1, df2]) # Dos tablas con la misma estructura están conectadas verticalmente, conservando el valor del índice original

148. pd.concat ([df1, df2], ignore_index = True) # Dos tablas con la misma estructura están conectadas verticalmente y el valor del índice se restablece

149, pd.concat ([df1, df2], ignore_index = True) .drop_duplicates () # Elimina los valores duplicados después del empalme

10. Exportar archivos

150. df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ 测试 .xlsx ') # Exportar formato de archivo.xlsx usa el método to_excel, que se logra a través del parámetro excel_writer

151. df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ test.xlsx ', sheet_name =' documento ')

152, df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ test.xlsx ', sheet_name =' document ', index = False) # Exportar es eliminar el índice

153. df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ test.xlsx ', sheet_name =' document ', index = False, columnas = [' ID ',' sales ',' name ']) #Establecer las columnas exportadas

154, df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ test.xlsx ', sheet_name =' document ', index = False, columnas = [' ID ',' sales ',' name '], encoding = 'utf-8') # Establecer la columna exportada

155, df.to_excel (excel_writer = r'C: \ users \ zhoulifu \ Desktop \ test.xlsx ', sheet_name =' document ', index = False, columnas = [' ID ',' sales ',' name '], encoding = 'utf-8', na_rep = 0) # Relleno de valor faltante

156, writer = pd.ExcelWriter (excelpath, engine = 'xlsxwirter') # Exportar varios archivos a varias hojas de un archivo

157 、 df1.to_excel (escritor, sheet_name = '表 一')

158 、 df2.to_excel (escritor, sheet_name = '表 二')

159 、 writer.save ()

Supongo que te gusta

Origin blog.csdn.net/weixin_52071682/article/details/113446340
Recomendado
Clasificación