• 卢经理 151 5399 4549
    扫一扫,加我咨询
扫码关注我们
15个高效的Pandas代码片段
发布时间:2023-10-12

Python的Pandas库是数据科学家必备的基础工具,在本文中,我们将整理15个高级Pandas代码片段,这些代码片段将帮助你简化数据分析任务,并从数据集中提取有价值的见解。

过滤数据

import pandas as pd
 
 # Create a DataFrame
 data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
        'Age': [25, 30, 35, 40]}
 
 df = pd.DataFrame(data)
 
 # Filter rows where Age is greater than 30
 filtered_df = df[df['Age'] > 30]
 print(filtered_df)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

分组和聚合数据

# Grouping by a column and calculating the mean
 grouped = df.groupby('Age').mean()
 print(grouped)
  • 1.
  • 2.
  • 3.

处理缺失数据

# Check for missing values
 missing_values = df.isnull().sum()
 
 
 # Fill missing values with a specific value
 df['Age'].fillna(0, inplace=True)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

将函数应用于列

# Applying a custom function to a column
 df['Age'] = df['Age'].apply(lambda x: x * 2)
  • 1.
  • 2.

连接DataFrames

# Concatenate two DataFrames
 df1 = pd.DataFrame({'A': ['A0', 'A1'], 'B': ['B0', 'B1']})
 df2 = pd.DataFrame({'A': ['A2', 'A3'], 'B': ['B2', 'B3']})
 
 
 result = pd.concat([df1, df2], ignore_index=True)
 print(result)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

合并DataFrames

# Merge two DataFrames
 left = pd.DataFrame({'key': ['A', 'B', 'C'], 'value': [1, 2, 3]})
 right = pd.DataFrame({'key': ['B', 'C', 'D'], 'value': [4, 5, 6]})
 
 merged = pd.merge(left, right, notallow='key', how='inner')
 print(merged)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

数据透视表

# Creating a pivot table
 pivot_table = df.pivot_table(index='Name', columns='Age', values='Value')
 print(pivot_table)
  • 1.
  • 2.
  • 3.

处理日期时间数据

# Converting a column to DateTime
 df['Date'] = pd.to_datetime(df['Date'])
  • 1.
  • 2.

数据重塑

# Melting a DataFrame
 melted_df = pd.melt(df, id_vars=['Name'], value_vars=['A', 'B'])
 print(melted_df)
  • 1.
  • 2.
  • 3.

使用分类数据类型

# Encoding categorical variables
 df['Category'] = df['Category'].astype('category')
 df['Category'] = df['Category'].cat.codes
  • 1.
  • 2.
  • 3.

数据采样

# Randomly sample rows from a DataFrame
 sampled_df = df.sample(n=2)
  • 1.
  • 2.

计算累计和

# Calculating cumulative sum
 df['Cumulative_Sum'] = df['Values'].cumsum()
  • 1.
  • 2.

删除重复项

# Removing duplicate rows
 df.drop_duplicates(subset=['Column1', 'Column2'], keep='first', inplace=True)
  • 1.
  • 2.

快捷进行onehot编码

dummy_df = pd.get_dummies(df, columns=['Category'])
  • 1.

导出数据

df.to_csv('output.csv', index=False)
  • 1.

为什么要加上导出数据呢?,因为在导出数据时一定要加上index=False参数,这样才不会将pandas的索引导出到csv中。

总结

这15个Pandas代码片段将大大增强您作为数据科学家的数据操作和分析能力。将它们整合到的工作流程中,可以提高处理和探索数据集的效率和效率。