Premièrement, la transformation de l'autre sur la chaîne et la trame de données
Plusieurs fois que nous calculons les résultats pendant le format de la chaîne et la prochaine opération, en particulier "chaîne"
Lorsque la syntaxe est syntaxe, une variable est nécessaire pour se connecter au format DataFrame. Cette fois, nous pouvons utiliser une série de série dans la panda à la méthode de conversion de données: "Utilisez-la à_frame () pour déployer la série de données de la série"s = pd.Series([0, 1, 2])# Series转为DataFrame,name参数用于指定转换后的字段名s = s.to_frame(name='列名')s
à la manière, une colonne Les données incluent des cadres de données à la chaîne:
"Utilisez Squeeze () pour implémenter la série de transferts de données de données unique COLI" ]
Lundi, deuxième trame de données de trame de données
# 只有单列数据的DataFrame转为Seriess.squeeze()
Parfois, nous devons briser l'ordre du nombre total de boîtes de données, telles que des machines de formation lors de l'apprentissage du modèle, puis prenez la commande de données d'origine, prenez quelques lignes avant la formation en tant que kit de test, qui peut être déployé. rapidement en pandas. Fonction essentielle cLa méthode d'échantillon () consiste à échantillonner les enregistrements de ligne des données brutes. La valeur par défaut n'est pas retirée et le paramètre FRACT est utilisé pour contrôler la fréquence d'échantillonnage, nous sommes définis sur 1 équivalent à la commande d'interruption:
Utilisez l'élément de données pour réduire la consommation de mémoire
df = pd.DataFrame({ 'V1': range(5), 'V2': range(5)})df.sample(frac=1)
Lorsque certaines colonnes de notre boîte de données sont formées plusieurs fois par quelques valeurs, consommez plusieurs valeurs, comme les éléments suivants:
import numpy as nppool = ['A', 'B', 'C', 'D']# V1列由ABCD大量重复形成df = pd.DataFrame({ 'V1': np.random.choice(pool, 1000000)})# 查看内存使用情况df.memory_usage(deep=True)
Cette fois, nous pouvons utiliser le type dans les données Panda pour réduire considérablement la consommation de mémoire. :
df['V1'] = df['V1'].astype('category')df.memory_usage(deep=True)
peut voir que la consommation de mémoire réduite de près de 98,3% après le type de conversion!
4, Type d'objet de piège
Voir le type de distribution:
s = pd.Series(['111100', '111100', 111100, '111100'])s
Cette situation suit, si elle est considérée comme une colonne de chaîne, vous ne pouvez pas gérer le facteur correspondant ne deviendra que la valeur manquante sans signaler, Fournir notre processus d'analyse:
s.apply(lambda s: type(s))
À ce moment-là, vous devez d'abord vous transformer en un type correspondant, puis exécuter la méthode en conséquence: 5. Évaluez rapidement chaque colonne avec une valeur manquante
Dans Panda, vous pouvez voir les propriétés Hanans pour une série pour comprendre si elle ne contient aucune pénurie, combinaison Appliquer (), nous pouvons voir rapidement quelles colonnes dans toute la boîte de données contenant des valeurs manquantes:s.str.replace('00', '11')
Vendredi, des années de politique Lorsque vous utilisez des notes () Calculez des classements
s.astype('str').str.replace('00', '11')
dans Pandas, nous pouvons utiliser la méthode de classement () pour calculer les informations de classement correspondant aux données de colonne, mais il existe un paramètre de méthode dans les notes. () Pour contrôler des résultats spécifiques. Stratégie de calcul, a cinqStratégie, conformément aux exigences de l'utilisation spécifique:
"Moyenne"
df = pd.DataFrame({ 'V1': [1, 2, None, 4], 'V2': [1, 2, 3, 4], 'V3': [None, 1, 2, 3]})df.apply(lambda s: s.hasnans)
Selon la politique moyenne, la même valeur des éléments la même valeur est son classement interne: Dans la politique minimale, le même élément classé est le minimum de ses classements internes:
"Max"
La stratégie maximale opposée min, prend la valeur maximale du même élément de classement à l'intérieur:
"Concentilité épaisse"
s = pd.Series([1, 2, 2, 2, 3, 4, 4, 5, 6])s.rank(method='average')
Selon une politique dense, il équivaut au classement après la retraite de la séquence, puis Le classement de chaque élément est attribué à chaque élément, également comparé aux besoins réels: "premier"
s.rank(method='min')
dans la première police, lorsque beaucoup d'éléments similaires, séquentiels allocation allouée à la série réelle: