我正在导入一个如下所示的 csv。可能的值为 $ 和 net
Type1,Type2,Type3
$,,
$,net,
net,$,$
我目前将它放在 pandas 数据框中,想知道如何将 $ 和 net 映射到不同的值。
我想将 $ -> DEPOSIT 和 net 映射到 -> NET DEP
我正在将列传递给函数
def directDeposit(var):
for value in var:
var.astype(str)
if value == '$':
var = value.map({'$':'DEPOSIT'})
df['type1'] = directDeposit(df['type1'])`
因为 csv 中有三种可能的类型,所以我希望能够将我正在测试的类型传递到函数中,以便我可以对所有 3 个类型重复它。我不太确定从这里该去哪里。
最佳答案
你可以这样做:
df['type1'] = df['type1'].map({'net': 'NET DEP', '$': 'DEPOSIT', '': "No value assigned"})
当您创建一个将 Pandas Series 作为输入的函数时,您不必对其进行循环。 Pandas 会为你做到这一点。
关于python - 如何创建一个将 pandas 列传递给其中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59936334/