20个实用的Python Excel数据处理脚本及详细源码
以下是20个实用的Python脚本,用于Excel数据处理任务。为每个脚本提供简要说明和示例代码。为了运行这些脚本,你需要安装pandas
和openpyxl
库。可以通过执行pip install pandas openpyxl
来安装。
1. 读取Excel文件
import pandas as pd
df = pd.read_excel('file.xlsx')
print(df.head())
2. 写入Excel文件
import pandas as pd
df = pd.DataFrame({'Name': ['John', 'Anna'], 'Age': [28, 24]})
df.to_excel('output.xlsx', index=False)
3. 选择特定列
import pandas as pd
df = pd.read_excel('file.xlsx')
selected_columns = df[['Name', 'Age']]
print(selected_columns)
4. 过滤行
import pandas as pd
df = pd.read_excel('file.xlsx')
filtered_df = df[df['Age'] > 25]
print(filtered_df)
5. 添加新列
import pandas as pd
df = pd.read_excel('file.xlsx')
df['NewColumn'] = df['Age'] * 2
print(df)
6. 删除列
import pandas as pd
df = pd.read_excel('file.xlsx')
df = df.drop(columns=['UnwantedColumn'])
print(df)
7. 修改列名称
import pandas as pd
df = pd.read_excel('file.xlsx')
df = df.rename(columns={'OldName': 'NewName'})
print(df)
8. 填充缺失值
import pandas as pd
df = pd.read_excel('file.xlsx')
df = df.fillna(0)
print(df)
9. 合并Excel文件
import pandas as pd
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
merged_df = pd.concat([df1, df2])
print(merged_df)
10. 数据透视表
import pandas as pd
df = pd.read_excel('file.xlsx')
pivot_table = df.pivot_table(index='Category', values='Sales', aggfunc='sum')
print(pivot_table)
11. 条件格式化
import pandas as pd
df = pd.read_excel('file.xlsx')
df.style.applymap(lambda x: 'background-color: yellow' if x > 50 else '')
12. 数据清理
import pandas as pd
df = pd.read_excel('file.xlsx')
df.dropna(inplace=True) # 删除缺失值的行
print(df)
13. 排序
import pandas as pd
df = pd.read_excel('file.xlsx')
sorted_df = df.sort_values(by='Age')
print(sorted_df)
14. 数据聚合
import pandas as pd
df = pd.read_excel('file.xlsx')
aggregated_df = df.groupby('Category').sum()
print(aggregated_df)
15. 指定列类型
import pandas as pd
df = pd.read_excel('file.xlsx', dtype={'Age': int})
print(df.dtypes)
16. 获取Excel正则匹配
import pandas as pd
df = pd.read_excel('file.xlsx')
regex_df = df[df['Name'].str.contains('John', na=False)]
print(regex_df)
17. 将日期解析为datetime
import pandas as pd
df = pd.read_excel('file.xlsx', parse_dates=['Date'])
print(df.dtypes)
18. 保存多个工作表
import pandas as pd
with pd.ExcelWriter('output.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')
19. 自定义索引
import pandas as pd
df = pd.read_excel('file.xlsx', index_col='ID')
print(df.head())
20. 计算列的总和
import pandas as pd
df = pd.read_excel('file.xlsx')
total = df['Sales'].sum()
print("Total Sales:", total)
这些脚本展示了各种操作从读取到修改以至综合管理Excel文件的能力。根据您的具体需要,您可以进一步自定义和扩展它们。