当前位置: 首页 > 知识库问答 >
问题:

如何根据Python中的列标题值选择excel列

江阳羽
2023-03-14

我有一个python数据框,我使用以下代码将其粘贴到excel工作表中:

df.to_excel(作家,列=[周刊,周刊1,周刊2],sheet_name='QTY SLS',启动=5,启动=8,头=假,索引=假)

在数据帧weeknum、Weeknum1和Weeknum2中选择的列是代码前面的输入(例如weeknum=第14周)。因此,这些可能是[‘第16周’、‘第15周’、‘第14周’]作为一个例子。我的问题是如何根据Weeknum输入选择开始列。因此,我粘贴到的Excel工作表如下所示:

所以,如果我把它放在输入中,我需要Startco的代码从第14周开始,如果我把它放在输入中,则从第10周开始。

希望这是有道理的。

共有1个答案

萧秋月
2023-03-14

你可以找到这样的开始列:

import pandas as pd

# Toy dataframe
df = pd.DataFrame(
    {
        "Week 1": [1, 1, 1],
        "Week 2": [2, 2, 2],
        "Week 3": [3, 7, 3],
        "Week 4": [4, 8, 4],
        "Week 5": [7, 2, 9],
    }
)

Weeknum = "Week 3"  # Position in the df header index == 2
Weeknum1 = "Week 4"
Weeknum2 = "Week 5"

# Get the position of df column with value of Weeknum
print(list(df.columns).index(Weeknum))
# Outputs 2

因此,您可以这样修改代码:

df.to_excel(
    writer,
    columns=[Weeknum, Weeknum1, Weeknum2],
    sheet_name="QTY SLS",
    startrow=5,
    startcol=list(df.columns).index(Weeknum),
    header=False,
    index=False,
)
 类似资料:
  • 问题内容: 如何DataFrame基于Python Pandas中某些列的值从中选择行? 在SQL中,我将使用: 问题答案: 要选择列值等于标量的行,请使用: 要选择列值可迭代的行,请使用: 结合以下条件: 注意括号。由于Python的运算符优先级规则,绑定比和更紧密。因此,最后一个示例中的括号是必需的。没有括号 被解析为 这导致一个系列的真值是模棱两可的错误。 要选择列值不相等的行 ,请使用:

  • 如何根据Pandas中某个列中的值从中选择行? 在SQL中,我将使用: 我试图查看熊猫的文档,但我没有立即找到答案。

  • 我试图查看熊猫的文档,但我没有立即找到答案。

  • 我有一个表,它有4列()gender具有与每个客户链接的唯一值:、或。 该部门与每种产品(男性或女性)都有独特的价值 我做了一个复杂的过程。首先,使用客户信息将male和其他客户分开(创建了两个表CUST_MALEY和cust_other) 如果CUST_MALEY表中有客户,则使用join,返回men division products行(其中division='men');如果cust_oth

  • 问题内容: 我有一个名为@status的变量,该变量在此select语句之前设置: 我只想选择if列,否则我想为shipwith选择null。我该如何完成? 问题答案:

  • 我正试图根据一个标准将x个列的数据归零 例如: 第1页: 一月二月三月四月五月六月七月八月九月十月十一月十二月 第2页: 版本(标准)=2 因此,我想选择前两个月,并在1月份将所有数据归零 更新:到目前为止,我得到了这么多,现在我只能选择 我无法让它选择范围。