使用熊猫组合工作表,遍历特定列,将行添加到新列表

时间:2019-08-27 10:30:36

标签: python excel pandas jupyter-notebook

我有一个excel工作簿,其中包含多个工作表,这些工作表都具有相同的列标题。我想遍历每个工作表中的一列,然后将行添加到新列表(或列)中。

背景:每个工作表代表一个不同的农民社区,每个工作表的每一列都是一段人口统计数据。我已经为每个农民分配了一个代码,我希望将所有这些代码都放在列表中。我知道我可以在excel中手动完成此操作,但正在尝试使用pandas,python

pruning.xlsx文件中的工作表之一的示例如下所示: enter image description here


import pandas as pd
import numpy as np


sheets_pt = pd.read_excel(r"C:\Users\RRF\Desktop\pruning.xlsx",sheetname=None)
sheets_pt_read = pd.ExcelFile(r"C:\Users\RRF\Desktop\pruning.xlsx")

sheetnames_read = sheets_pt_read.sheet_names

codelist = []
for village in sheetnames_read:
    for code in sheets_pt[village]["Farmer Code"]:
        codelist.append(code)

运行代码后。我先打印代码列表,然后打印出前5页中的农夫代码。然后出现以下错误消息...

这是我收到的错误消息:

KeyError跟踪(最近一次通话最近) 〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ indexes \ base.py在get_loc中(自身,键,方法,公差 。 。 。 KeyError:“农民代码”

如果有人感兴趣的话,很乐意分享整个错误消息。

1 个答案:

答案 0 :(得分:0)

base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
  sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machin