繁体   English   中英

Pandas 未将值附加到数据框

[英]Pandas not appending values to data frame

我有一个名为 balance.csv 的文件。 它包含用户数据,例如他们的 discord 身份证号码、他们的账户余额以及他们拥有的股票数量。 我正在尝试使用 discord.py 创建一个简单的命令,让他们知道他们的账户余额。 如果他们没有帐户,它会为他们初始化一个。 但是,当代码尝试初始化帐户时,这些值不会附加到 CSV 文件。 我不确定问题出在哪里以及为什么会发生。 我正在使用 pandas 和 discord.py。

balance_data = pd.read_csv('balance.csv')

def init_account(id):
    global balance_data
    balance_data = balance_data.append({"user_id":id, "account_balance":100, "stocks":0}, ignore_index=True)

@client.command(name='bal')
async def balance(ctx):
    if ctx.author.id not in balance_data["user_id"].values:
        await ctx.send("Creating Account...")
        init_account(ctx.author.id)
        await ctx.send("Account created.")
        r_val = balance_data.loc[balance_data["user_id"]==ctx.author.send]
        user_bal = balance_data['account_balance'].iloc[r_val]
        await ctx.send(f"You have {user_bal} credits.")
    else:
        r_val = balance_data.loc[balance_data["user_id"]==ctx.author.send]
        user_bal = balance_data['account_balance'].iloc[r_val]
        await ctx.send(f"You have {user_bal} credits.")

dataframe 和 CSV 文件是两个不同的东西。 仅仅因为您从文件中读取了 dataframe 并不意味着修改 dataframe 也会修改该文件。 它不会在 dataframe 和文件之间创建任何类型的持久“同步”。 如果要更改文件,则需要使用.to_csv写回文件。

使用 read_csv 读取数据框 -> 应用一些更改(例如 append sth)-> 使用 to_csv 将数据框写入文件

在那里创建一个空的 dataframe 和 append .. 之后你可以使用.to_csv导出它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM