75278350@qq.com 发表于 2024-10-14 16:21:28

为什么不能进行数据的保存

大神请指教,以下代码为什么不能进行数据的保存?


import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_excel(r"C:\Users\附表4-3-1.xlsx")

percentage = lambda r:r["债权资金"]/(r["债权资金"]+r["股权资金"])
wacc = lambda k:(k["债权资金"]*k["债务资金成本"]+k["股权资金"]*k["股权资金成本"])/(k["债权资金"]+k["股权资金"])

data["债务资金占比"] = data.apply(percentage,axis = 1)
data["加权资本成本"] = data.apply(wacc,axis = 1)

df= pd.DataFrame(data)
df
df.save("88")

FishC 发表于 2024-10-14 16:33:44

你的代码中主要有两个问题导致无法进行数据保存:

1. **自定义函数有误**:你的 `percentage` 和 `wacc` 函数定义存在问题。除数部分会一直为 0,导致无法正确计算。如果想要实现比例计算或加权平均资本成本(WACC)计算,需核对公式是否正确。

2. **数据保存方法错误**:`DataFrame` 对象没有 `save` 方法。你可以使用 `to_excel` 或其他 `to_*` 方法来保存数据。

以下是修正后的代码示例:

import pandas as pd

# 假设数据已正确被加载
data = pd.read_excel(r"C:\Users\附表4-3-1.xlsx")

# 更正后的例子计算(需根据实际需求更改)
percentage = lambda r: r / (r.sum()) if r.sum() != 0 else 0
wacc = lambda k: (k.mean()) if len(k) > 0 else 0

data = data.apply(percentage, axis=1)
data = data.apply(wacc, axis=1)

df = pd.DataFrame(data)

# 使用 to_excel 方法保存 DataFrame
df.to_excel(r"C:\Users\88.xlsx", index=False)

print("数据已保存成功!")

确保路径和文件名正确,确保路径中文件夹存在且对程序具有写入权限。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 为什么不能进行数据的保存