【问题标题】:Reading and editing excel files with pandas使用 pandas 读取和编辑 excel 文件
【发布时间】:2018-10-24 04:09:46
【问题描述】:

所以,我正在读取 xlsx 文件,我需要选择 3 个特定列,然后重命名它们,并将每列的前 100 行转移到一个新的 xlsx 文件中,从原始文件中删除它们。

到目前为止,我的代码是从手动编辑的 xlsx 文件中读取的,我在其中重命名列,选择其中的前 100 个(标题除外),等等:

df = pandas.read_excel('test.xlsx', names=['date', 'value', 'source'])
df['date'] = pandas.to_datetime(df['date'], format='%b %d %Y.%f').astype(str)

print(df.head(5))

正如预期的那样返回:

         date    value               source

0  2018-05-01      1                xxxxxxx
1  2018-05-01      1      xxxxxxxxxxxxxxxxx
2  2018-05-02      1      xxxxxxxxxxxxxxxxx
3  2018-05-02      1      xxxxxxxxxxxxxxxxx
4  2018-05-03      1     xxxxxxxxxxxxxxxxxx

有没有办法用 pandas 自动读取和编辑 xlsx 文件?其他库?我是 python 新手,我真的迷路了:(

【问题讨论】:

    标签: python excel pandas xlsx xlwt


    【解决方案1】:

    似乎您需要 2 个文件输出。前一百行一个,其余的一个。 pandas.DataFrame.iloc 很简单:

    import pandas as pd
    
    df = pd.read_excel('test.xlsx', names=['date', 'value', 'source'])
    
    df.iloc[:100].to_excel('out1.xlsx', index=False)
    df.iloc[100:].to_excel('out2.xlsx', index=False)
    

    【讨论】:

    • 谢谢!这真的帮助了我,现在我想知道是否有办法制作一个脚本来自动化 excel 编辑部分。
    • @GabrielFernandes,不幸的是,不确定该部分需要什么。您需要指定精确的转换。如有必要,请随时询问new question
    猜你喜欢
    • 2019-05-30
    • 2016-02-01
    • 1970-01-01
    • 2023-02-10
    • 2020-10-02
    • 1970-01-01
    • 1970-01-01
    • 2013-06-08
    相关资源
    最近更新 更多