Introduction à Python et pratique

1. Grammaire de base

première ligne de code

print("hello world!")

type de données

  • Entiers et flottants
print(type(1000)) # <class 'int'>
print(type(1_000)) # <class 'int'>
print(type(1000.0)) # <class 'float'>
print(type(1e3)) # <class 'float'>
  • chaîne
print('1000')
print(type('1000')) # <class 'str'>
  • booléen
print(True, False)
print(type(True), type(False))  # <class 'bool'> <class 'bool'>

Variables et affectations

  • Il n'est pas nécessaire de définir explicitement les types de données en python
a = 1
b = 2.0
c = '3'
d = True
print(a,b,c,d) 

opération

  • Opérations numériques
a = 1
b = 2
p = a + b
q = a - b
r = a * b
s = a / b
print(p,q,r,s)  # 3 -1 2 0.5
  • opération de chaîne
c1 = 'radio'
c2 = 'mics'
print(c1 + c2)  # radiomics
  • opération booléenne
d1 = True
d2 = False
print(d1 and d2, d1 or d2, not d1)
# False True False
  • jugement conditionnel
a = 1
b = 1.0
if a == b:
    print('Equal.')
else:
    print('Not equal.')
# Equal.

a == 1
a = 1
if a > 1:
    print('a > 1')
elif a < 1:
    print('a < 1')
else:
    print(' a == 1')
# a == 1
  • faire une boucle
nameList = ['zhao','qian','sun','li']
for name in nameList:
    print(name)
# zhao
# qian
# sun
# li

2. Gestion des packages Python (entrez les commandes dans le terminal)

  • Afficher les informations du package python spécifié
pip show pynomo  # PyNomo 是做特征提取用的包
# Name: PyNomo
# Version: 0.3.3
# Summary: PyNomo - Python Nomograms
# Home-page: http://pynomo.org/
# Author: Leif Roschier
# Author-email: [email protected]
# License: GPL
# Location: d:\anaconda3\envs\lib\site-packages
# Requires:
# Required-by:
  • Installation du paquet Python
pip install pynomo
  • Installer la version spécifiée du package Python
pip install pynomo==0.3.2
  • Téléchargez et installez le package Python à partir du site miroir spécifié
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pynomo
  • Mettre à jour les packages Python
pip install --upgrade pynomo
  • désinstaller le paquet python
pip uninstall pynomo --yes
  • Afficher tous les packages Python
pip list

3. Manipulation des données

● package d'importation

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple openpyxl
import pandas as pd
import numpy as np
import openpyxl

● Veuillez utiliser "\\" ou "/" pour lire le chemin du
système de fenêtres de données

xlsx_a = '/Users/Desktop/data/aa.xlsx'
xlsx_b = '/Users/Desktop/data/bb.xlsx'
data_a = pd.read_excel(xlsx_a)
data_b = pd.read_excel(xlsx_b)

Afficher les données

  • Noms des colonnes de données (fonctionnalités Radiomics).columns

    print(data_a.columns)
    
  • Obtenir le nombre de lignes et de colonnes de données.shape

    rows_a, cols_a = data_a.shape
    print(rows_a, cols_a)
    
  • Aperçu rapide des n premières lignes de données .head( 0à partir de la ligne)

    print(data_a.head(4))
    
  • Affichage rapide des n dernières lignes de données.tail

    print(data_b.tail())
    
  • Afficher les données de colonne spécifiées[列名]

    print(data_a['A'])  # 列名'A'
    

Manipulation des données

  • Nouvelle colonne insert(ajouter un libellé)

    rows_a, cols_a = data_a.shape
    rows_b, cols_b = data_b.shape
    labels_a = np.zeros(rows_a)  # 生成 a 行 0
    labels_b = np.ones(rows_b)   # 生成 b 行 1 (只有0和1可以这样写)
    data_a.insert(0, 'label', labels_a) # 第 0 列插入 label 列
    data_b.insert(0, 'label', labels_b)
    print(data_a.head())
    print(data_b.head())
    
  • Modifier les données de la colonne (affectation)

    data_b['label'] = 0
    print(data_b['label'])
    data_b['label'] = 1
    
  • Fusionner les donnéesconcat

    data = pd.concat([data_a, data_b], ignore_index = True)
    print(data.head())
    print(data.tail())
    
  • Mélange de donnéesshuffle .reset_index

    # pip install -i https://pypi.tuna.tsinghua.edu.cn/simple sklearn.utils
    from sklearn.utils import shuffle
    
    data = shuffle(data)  # 将合并后的a,b数据随机混序
    data.reset_index(drop=True, inplace=True) 
    # 混序后重置索引 drop去掉原来的index, inplace替换新的index
    print(data["label"][0:10])
    
  • Vue des valeurs aberrantes.isna set_option

    # 制备异常值
    data['C'] = np.nan  # C、D 列改为 NaN = not a number
    data['D'] = np.nan
    data.loc[3:5] = np.nan  # 3,4,5行改为NaN
    data.loc[1, 'A'] = np.nan # 1行A列改为NaN
    data.loc[2, 'B'] = np.nan
    
    # 查看全部数据,不省略显示
    pd.set_option('display.max_rows', None) 
    pd.set_option('display.max_columns', None)
    print(data.isna()) # isna是否是NaN
    
  • Supprimer les lignes/colonnes qui sont toutes NaN .dropna
    NaN = pas un nombre

    data.dropna(axis=0, how='all', inplace=True) 
    # axis=0 行,axis=1 列
    # how='all' 只删除全部都是NaN的行
    # inplace=True 对原数据操作,否则就是对副本操作
    print(data.head())
    
  • Remplir les valeurs NaN avec 0.fillna

    data.fillna(0, inplace = True)
    print(data)
    

Je suppose que tu aimes

Origine blog.csdn.net/zea408497299/article/details/125229585
conseillé
Classement