首页 > 其他分享 >pandas操作excle

pandas操作excle

时间:2023-03-17 13:22:05浏览次数:38  
标签:xlsx df excel example read pd 操作 excle pandas

Python是一门强大的编程语言,也是数据科学领域中最流行的语言之一。在处理数据时,很多时候需要与Excel进行交互,以进行数据读取、清理和分析。Python中有很多工具可以与Excel进行交互,其中pandas是其中最受欢迎的库之一。在本文中,我们将介绍如何使用Python和pandas进行Excel文件操作,并讨论一些常用的pandas方法。

读取Excel文件:

import pandas as pd

df = pd.read_excel('example.xlsx')

读取指定的Excel表单:

df = pd.read_excel('example.xlsx', sheet_name='Sheet1')

写入数据到Excel文件:

df.to_excel('example.xlsx', sheet_name='Sheet1', index=False)

追加数据到Excel文件:

with pd.ExcelWriter('example.xlsx', mode='a') as writer:
    df.to_excel(writer, sheet_name='Sheet1', index=False)

选择Excel表单中的列:

df = pd.read_excel('example.xlsx')
selected_cols = ['col1', 'col2']
df_selected = df[selected_cols]

选择Excel表单中的行:

df = pd.read_excel('example.xlsx')
selected_rows = df.loc[df['col1'] == 'value1']

过滤Excel表单中的行:

df = pd.read_excel('example.xlsx')
filtered_rows = df[df['col1'].str.contains('value')]

按列排序:

df = pd.read_excel('example.xlsx')
sorted_df = df.sort_values(by='col1')

按列分组并求和:

df = pd.read_excel('example.xlsx')
grouped_df = df.groupby('col1').sum()

对Excel表单中的列应用函数:

df = pd.read_excel('example.xlsx')
df['new_col'] = df['col1'].apply(lambda x: x * 2)

使用Pivot表:

df = pd.read_excel('example.xlsx')
pivot_table = pd.pivot_table(df, values='col1', index='col2', columns='col3', aggfunc='sum')

插入新的行:

df = pd.read_excel('example.xlsx')
new_row = pd.DataFrame({'col1': 'value1', 'col2': 'value2'}, index=[0])
df = pd.concat([new_row, df]).reset_index(drop=True)

插入新的列:

df = pd.read_excel('example.xlsx')
new_col = pd.Series(['value1', 'value2'])
df['new_col'] = new_col

删除行:

df = pd.read_excel('example.xlsx')
df = df.drop(df[df['col1'] == 'value1'].index)

删除列:

df = pd.read_excel('example.xlsx')
df = df.drop('col1', axis=1)

重命名列:

df = pd.read_excel('example.xlsx')
df = df.rename(columns={'col1': 'new_col1', 'col2': 'new_col2'})

修改单元格的值:

df = pd.read_excel('example.xlsx')
df.loc[df['col1'] == 'value1', 'col2'] = 'new_value'

使用多重索引:

df = pd.read_excel('example.xlsx')
df = df.set_index(['col1', 'col2'])

读取多个Excel文件并合并:

import os

path = 'path/to/files'
all_files = os.listdir(path)
all_excels = [file for file in all_files if file.endswith('.xlsx')]
dfs = [pd.read_excel(os.path.join(path, file)) for file in all_excels]
merged_df = pd.concat(dfs)

选择特定的单元格:

df = pd.read_excel('example.xlsx')
cell_value = df.at[0, 'col1']

拆分Excel表单中的列:

df = pd.read_excel('example.xlsx')
split_cols = df['col1'].str.split('-', expand=True)
split_cols.columns = ['col1_part1', 'col1_part2']

将Excel表单中的列合并:

df = pd.read_excel('example.xlsx')
df['col1'] = df['col1'].astype(str) + '-' + df['col2'].astype(str)

将Excel表单中的日期列格式化:

df = pd.read_excel('example.xlsx')
df['date_col'] = pd.to_datetime(df['date_col'], format='%Y-%m-%d')

根据Excel表单中的某一列填充空值:

df = pd.read_excel('example.xlsx')
df['col1'] = df['col1'].fillna(method='ffill')

根据Excel表单中的某一列去除重复行:

df = pd.read_excel('example.xlsx')
df = df.drop_duplicates(subset='col1')

将Excel表单中的数字列格式化为百分比:

df = pd.read_excel('example.xlsx'
df['percentage_col'] = df['percentage_col'].apply(lambda x: '{:.2%}'.format(x))

将Excel表单中的数字列四舍五入:

df = pd.read_excel('example.xlsx')
df['decimal_col'] = df['decimal_col'].round(2)

根据Excel表单中的某一列进行透视:

df = pd.read_excel('example.xlsx')
pivot_table = pd.pivot_table(df, values='col1', index='col2', columns='col3', aggfunc='sum')

计算Excel表单中列的总数:

df = pd.read_excel('example.xlsx')
col_total = df['col1'].sum()

统计Excel表单中每个值的数量:

df = pd.read_excel('example.xlsx')
value_counts = df['col1'].value_counts()

标签:xlsx,df,excel,example,read,pd,操作,excle,pandas
From: https://www.cnblogs.com/bertin/p/17226414.html

相关文章

  • nginx重启和操作
    在linux操作系统中,重启nginx1、当不知道nginx所在目录时,需要先查找到nginx的位置 查看ngnix位置(masterprocess后面的就是nginx的目录):ps-ef|grepnginx2......
  • 前端操作cookie的用法
    前端操作cookie的方法        +前端操作cookie的方法        +增删改查四个操作      设置cookie      ......
  • net 日常操作常用类
    net常用类库一览系统类Type类,Object类,String类,Array类,Console类,Exception类,GC类,MarshalByRefObject类,Math类。DateTime结构,Guid结构,ICloneable接口,I......
  • web自动化-滚动操作
    一、基本知识:滚动步骤:1.通过selenium的查找元素的方法先找到元素;2.通过执行js语句,将元素滚动到可见区域中;#找到元素:target=driver.find_element_by_xpath('//a[te......
  • 安装Centos7初始化操作系统
    设置静态网络1、设置静态网络,一是用来不让地址飘忽不定,二来是为了访问外网。命令如下:[root@localhost~]#vim/etc/sysconfig/network-scripts/ifcfg-ens33修改内容......
  • pandas.DataFrame.shape-返回表示DataFrame维度的元组
    importpandasaspdd1=[[3,"negative",2],[4,"negative",6],[11,"positive",0],[12,"positive",2]]df1=pd.DataFrame(d1,columns=["xuhao","result","value"])pr......
  • selenium常用的元素操作
    webdriver常用的元素操作1、clear()清除元素的输入内容2、send_keys()在元素上模拟按键输入3、click()单击元素4、submit()提交表单,作用同click#chrome浏览器驱......
  • 【并发编程十四】c++原子操作(2)——实现自旋锁
     【并发编程十四】c++原子操作(2)——实现自旋锁一、自旋锁简介二、使用自旋锁三、不使用自旋锁四、分析 简介在介绍完原子操作,我们这篇使用c++提供的原子操......
  • 【并发编程十三】c++原子操作(1)
     【并发编程十三】c++原子操作(1)一、改动序列1、改动序列2、预测执行二、原子操作及其类别1、原子操作2、非原子操作3、原子类型三、标准原子类型1、......
  • sqlserver2008 两种分页操作
    1.有唯一项字段(例如id)SELECTtop分页大小*FROM表名whereidnotin(selecttop(分页大小*(第几页-1))idfrom表名where搜索字段1='aaa'and搜索字段2='bbb'o......