91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python如何實現Excel表格處理

發布時間:2022-02-19 16:33:36 來源:億速云 閱讀:174 作者:iii 欄目:開發技術

這篇文章主要介紹“Python如何實現Excel表格處理”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Python如何實現Excel表格處理”文章能幫助大家解決問題。

一、文件

一個測試有兩個sheet頁的Excel測試文件 test.xlsx

二、代碼

import pandas as pd

file1 = pd.ExcelFile('D:\data\py\test.xlsx')
file2 = pd.read_excel('D:\data\py\test.xlsx')
print(file)
<pandas.io.excel._base.ExcelFile object at 0x0000021DE525DF88>
-----------------分割線---------------------
   姓名  年齡 性別  住址
0  張三   7  男 NaN
1  李四   6  男 NaN
2  王芳   6  女 NaN

三、分析

pd.read_excel讀出來是一個dataframe可以直接打印出內容,但是只能讀取一個sheet頁,默認第一個sheet頁

@Appender(_read_excel_doc)
@deprecate_kwarg("skip_footer", "skipfooter")
def read_excel(
    io,
    sheet_name=0,
    header=0,
    names=None,
    index_col=None,
    usecols=None,
    squeeze=False,
    dtype=None,
    engine=None,
    converters=None,
    true_values=None,
    false_values=None,
    skiprows=None,
    nrows=None,
    na_values=None,
    keep_default_na=True,
    verbose=False,
    parse_dates=False,
    date_parser=None,
    thousands=None,
    comment=None,
    skip_footer=0,
    skipfooter=0,
    convert_float=True,
    mangle_dupe_cols=True,
    **kwds
):

    for arg in ("sheet", "sheetname", "parse_cols"):
        if arg in kwds:
            raise TypeError(
                "read_excel() got an unexpected keyword argument " "`{}`".format(arg)
            )

    if not isinstance(io, ExcelFile):
        io = ExcelFile(io, engine=engine)
    elif engine and engine != io.engine:
        raise ValueError(
            "Engine should not be specified when passing "
            "an ExcelFile - ExcelFile already has the engine set"
        )

    return io.parse(
        sheet_name=sheet_name,
        header=header,
        names=names,
        index_col=index_col,
        usecols=usecols,
        squeeze=squeeze,
        dtype=dtype,
        converters=converters,
        true_values=true_values,
        false_values=false_values,
        skiprows=skiprows,
        nrows=nrows,
        na_values=na_values,
        keep_default_na=keep_default_na,
        verbose=verbose,
        parse_dates=parse_dates,
        date_parser=date_parser,
        thousands=thousands,
        comment=comment,
        skipfooter=skipfooter,
        convert_float=convert_float,
        mangle_dupe_cols=mangle_dupe_cols,
        **kwds
    )

pd.ExcelFile 返回值是一個Excel對象,不能直接用,但是可以讀取整個Excel內容

四、pd.ExcelFile

file = pd.ExcelFile('D:\data\py\test.xlsx')

sheet頁名稱

print(file.sheet_names)
['一年級', '二年級']

遍歷讀取每個sheet頁的內容

for name in file.sheet_names:
    _df = pd.read_excel(file,name)
    print(_df)
  姓名  年齡 性別  住址
0  張三   7  男 NaN
1  李四   6  男 NaN
2  王芳   6  女 NaN
   姓名  年齡 性別
0  李明   8  男
1  劉敏   8  女
2  張強   7  男

將兩個sheet頁的內容合并,并添加一列內容為sheet頁名稱

df_list=[]
for name in file.sheet_names:
    _df = pd.read_excel(file,name)
    _df['班級']=name
    df_list.append(_df)
df = pd.concat([_df for _df in df_list],sort=False)
print(df)
姓名  年齡 性別  住址   班級
0  張三   7  男 NaN  一年級
1  李四   6  男 NaN  一年級
2  王芳   6  女 NaN  一年級
0  李明   8  男 NaN  二年級
1  劉敏   8  女 NaN  二年級
2  張強   7  男 NaN  二年級

忽略掉原來的index

df = pd.concat([_df for _df in df_list],ignore_index=True,sort=False)
print(df)
姓名  年齡 性別  住址   班級
0  張三   7  男 NaN  一年級
1  李四   6  男 NaN  一年級
2  王芳   6  女 NaN  一年級
3  李明   8  男 NaN  二年級
4  劉敏   8  女 NaN  二年級
5  張強   7  男 NaN  二年級

修改列名為英文

df = df.rename(columns={'姓名': 'name', '年齡': 'age', '性別': 'sex', '住址': 'address', '班級': 'class'})
print(df)
name  age sex  address class
0   張三    7   男      NaN   一年級
1   李四    6   男      NaN   一年級
2   王芳    6   女      NaN   一年級
3   李明    8   男      NaN   二年級
4   劉敏    8   女      NaN   二年級
5   張強    7   男      NaN   二年級

將df保存為CSV、Excel文件

df.to_csv('../data/sheet合并.csv',index=False) 
df.to_excel('../data/sheet合并.xls',index=True)

五、總結

可以發現Python讀寫Excel文件還是很方便的!

df.to_csv('../data/sheet合并.csv',index=False) 
df.to_excel('../data/sheet合并.xls',index=True)

關于“Python如何實現Excel表格處理”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东辽县| 瑞丽市| 醴陵市| 涿鹿县| 东兰县| 开江县| 偃师市| 河西区| 武乡县| 山丹县| 武冈市| 怀仁县| 临武县| 固原市| 岱山县| 天津市| 沂南县| 山阳县| 孟连| 阳高县| 上饶县| 济阳县| 莲花县| 石台县| 高淳县| 锡林郭勒盟| 平江县| 离岛区| 连州市| 沁源县| 同德县| 祁东县| 大宁县| 耒阳市| 二连浩特市| 淮安市| 南投县| 浙江省| 平乐县| 晴隆县| 沙雅县|