Directorio artículo
Comenzó la serialización pandas herramienta de análisis de datos de la serie de la actualidad de los artículos, recomienda PyCharm integrado Python3.6 +; si usted es un cero basan blanco o se ha iniciado pandas, se puede ir a algunos de los productos secos en esta serie de la escuela secundaria.
Extracto de Baidu Encyclopedia: pandas numpy es una herramienta, la herramienta para resolver tareas de análisis de datos creados en base a. pandas en una gran biblioteca y un poco de modelo de datos estándar que proporciona las herramientas necesarias para operar de manera eficiente grandes conjuntos de datos. pandas ofrece una serie de funciones y métodos nos permiten manejar rápida y fácilmente los datos. Pronto se dará cuenta de que es uno de los factores importantes que hacen que Python se convierta en un entorno de análisis de datos potente y eficiente.
Aunque los pandas basado en numpy, pero antes del inicio de pandas serie de artículos, no tengo la intención de introducir numpy uso específico, porque el enfoque numpy en resolver un problema de matemáticas una lista multidimensional o matriz, pandas a partir del diseño es para resolver problemas prácticos, me Creo que podemos empezar pandas rectas, en una serie de tutoriales, voy a tratar y amigos básicos sin numpy, o, en su conocimiento numpy necesario, voy a hablar directamente con, voy a tratar con el lenguaje más sencillo el menor de los lectores pre preliminares, terminado todo el pandas de la serie.
A medida que comienza la serie, la tarea central de este trabajo es hacer que cada lector familiarizado con los conceptos y funcionamiento básico de una estructura de datos de los pandas, que es la serie.
objetos serie es similar a una matriz unidimensional, por un conjunto de datos (tipo de datos puede ser un número entero, flotador, de cuerda, y otros objetos Python), y con la composición mismo índice de longitud (o etiqueta). Por ejemplo:
import pandas as pd
# 标签 1 索引 数据'a', 标签 2 索引数据 'b'...
s = pd.Series(data=['a','b','c','d'],index=[1,2,3,4])
print(s)
Serie de tres maneras de crear
Para el constructor pd.Series()
, los tres parámetros que están más preocupados por los datos de datos, índices y tipos de datos de índice de tipo D, respectivamente, por la serie de valores de índice y dtype acceso a la propiedad.
# 代码接上一段,后同
print(s.values)
print(s.index)
print(s.dtype)
se requiere datos de parámetros, índice, como el valor predeterminado, que es el intervalo predeterminado (len (datos)), el código de seguridad no se especifica como índice, el índice = [0,1,2,3], en lugar de [1,2, 3,4]; dtype como predeterminada, objeto predeterminada;
Creado por la matriz (lista)
data = ['l','o','v','e']
s1 = pd.Series(data=data)
print(s1)
Por creación del diccionario
data = {'math':100,'english':94,'chinese':'95'}
s2 = pd.Series(data=data)
print(s2)
Puede ser visto como un diccionario valores de índice de clave como datos, creada Series
Creado por Constant
De este modo ha creado, se debe especificar el índice, que se indexan con el mismo valor, el valor es constante que damos.
s3 = pd.Series(1,index=[1,2,3,4,5])
print(s3)
Serie consulta de cuatro maneras
Serie S2 a un ejemplo:
en rodajas
Serie es similar a la lista, sino que también proporciona una operación de división:
print(s2[1:3])
Para una rebanada, dos cosas: En primer lugar, el índice es cero, la segunda abertura se cierra después de la sección frontal, incluyen: [13] solamente subíndice 2, es decir el segundo, tercero datos Series, , prestar atención al índice rebanada y el índice no importa.
índice índice
Este comportamiento es el diccionario similar de valores clave
print('math',s2['math'])
Puede s2.get('math')
tomar el 100, si la incertidumbre está presente en s2, matemáticas, puede s2.get('math',101)
establecer el valor predeterminado 101, y si no, se volverá 101 sin error.
la cabeza de la cola()
Ver conocido significado conocido, head()
es tomar el primer pocos datos, tail()
que es tomar unos cuantos datos.
print(s2.head())
print(s2.head(2))
El valor por defecto es tomar cinco, si es menos de 5 luego tomar todos ellos.
condiciones consulta
print("\n成绩大于 95 的科目:\n",s2[s2>95])
print("\n成绩等于 95 的科目:\n",s2[s2==95])
print("\n成绩大于等于 95 的科目:\n",s2[s2>=95])
Otras funciones de uso general
Nueva línea de datos
Tiene dos funciones: append()
y set_value()
se puede realizar esta función, pero append()
sólo aceptan Serie / trama de datos de parámetros formales se completa con una nueva modificación de una serie, debe aceptar su valor de retorno; set_value()
más como Python diccionario incorporado elemento de la nueva manera, es en lugar de editar.
s2 = s2.append(pd.Series({'music':98}))
print(s2)
s2.set_value('history',99)
print(s2)
Tenga en cuenta que la advertencia anterior, set_value()
será obsoleto en una versión futura, la .at recomendada [] o .iat [] expresión.
s2.at['history'] = 93
s2.at['geo'] = 91
print(s2)
Encontrado experimentalmente .at [] índice y el efecto anterior es casi la misma consulta de índice, la consulta puede ser modificada para añadir, de modo .get () / [] no es solamente consulta también puede ser modificado para añadir; .at [ ] también puede ser utilizado como una de las formas de buscar, usar y flexible.
.iat [] y .at [] i es la diferencia de solo una, la misma función, i representa un número entero de la Entero Inglés, representantes .iat [] de datos sólo se puede acceder mediante un índice, tal como la modificación de las calificaciones de matemáticas 99:
s2.iat[0] = 99
print(s2)
Para eliminar una fila de datos
Utilizando la drop()
función de señalar que no modifica el lugar predeterminado, debe recibir un valor de retorno:
s2 = s2.drop('math')
print(s2)
Situ puede llegar a ser modificada estableciendo el parámetro inplace = verdad, exactamente el mismo código y el código siguiente por encima de efectos:
s2.drop('math',inplace=True)
print(s2)
deduplicación
Si lo que desea es obtener datos no duplicados en los datos, el uso directo unique()
, devuelve una lista, la serie en sí no cambia,
si se desea conseguir Serie deshacerse de datos duplicados, recomendado para su uso drop_duplicates()
, sino que también tiene parámetros in-situ, otro parámetro importante es mantener , a menudo van primero / último, es decir, en los datos duplicados, retiene el primero / último.
s2['english'] = 95
print(s2.unique(),'\n')
print(s2,'\n')
s2.drop_duplicates(keep='last',inplace=True)
print(s2)
secuencia
Por sort_values()
secuenciación completa, centrándose in-situ de parámetros y ascendente (sea o no ordenada de forma ascendente, el valor predeterminado es Verdadero, que es el valor por defecto en orden ascendente:
s2.sort_values(inplace=True,ascending=True)
print(s2)
La detección de los valores perdidos
Función isnull()/notnull()
función antisentido par EENOW ver el nombre, el valor de detección de falta, con la longitud de los datos y devuelve la lista bool:
s2['bio'] = None
print(s2.isnull(),'\n')
print(s2.notnull())
punto de la serie, como uno de los pandas dos estructuras de datos, que es la base de otra estructura de datos trama de datos, sólo en la serie es unidimensional, bidimensional-formato de tabla trama de datos, junto al hablar de trama de datos, en este Por favor, antes de la digestión buena serie.