【发布时间】:2019-03-29 22:53:20
【问题描述】:
希望有人可以帮助我将这个 Excel 逻辑转换为 python 的逻辑
=IF(LEFT(A8,5)="Total",A9,I8)
所以我希望找到一个范围内的所有内容,然后使用该范围内的第一个元素创建一个新列。问题是范围的名称可以更改。
我实施的当前解决方案是将列转换为索引,并通过执行以下操作按索引名称手动选择:
Sales = df.loc['1000 - Cash and Equivalents':'Total - 1000 - Cash and Equivalents']
这个名称可能会改变并且可能包含更少或更多行的问题,并且需要使其更加通用,所以我无法指定编号范围。
这是数据示例:
和 Post 转换我的数据如下所示:
【问题讨论】:
-
您能否解释一下您的解决方案
Sales = df.loc['1000 - Cash and Equivalents':'Total - 1000 - Cash and Equivalents']是否无法使用,预期的输入是什么?字符串1000?或Cash and Equivalents或其他? -
是的,所以我已将 Accounts 列设为 pandas 中的索引并按索引名称切片
-
是的,它明白,但不确定你想要什么。我的excel知识很差,也没有你的excel数据,所以很难测试和猜测@987654331需要什么@
-
@jezrael 澄清一下,这是我现在正在工作的代码,pastebin.com/51FHMyfj 我希望你能从中看到我的目标
-
比较好,
PL.csv是保密的吗?
标签: python pandas indexing data-modeling data-cleaning