Excel 中的 Python 现已正式发布,适用于 Microsoft 365 商业版和企业版的 Windows 用户。去年 8 月,微软与 Anaconda 合作,通过集成 Python 为 Excel 引入了一个令人兴奋的新增功能,从而可以将 Python 和 Excel 分析无缝结合到同一个工作簿中,无需设置。从那时起,我们将流行的 Python 分析库(如 pandas、Matplotlib 和 NLTK)的强大功能带给了无数的 Excel 用户。
当然,要使用Python in Excel,必须订阅Microsoft 365 商业版或企业版。
打开Excel,点击“公式”-“插入Python”:
选中单元格,输入“=PY”:
点击弹出的PY按钮后,输入框变成绿色的“PY”:
接下来我们就可以对数据进行Python处理分析了。
我们有如下数据:
此时,有两种情况发生:一种是您会Python语言,另一种是您不会Python语言。
如果您会使用Python语言
在PY输入框输入:
sample_df = xl("IrisDataSet8[#全部]", headers=True)
sample_df.describe()
生成dataframe,展开描述信息:
接着,再导入matplotlib库生成散点图:
import matplotlib.pyplot as plt
plt.scatter(xl("IrisDataSet10[sepal_length]"), xl("IrisDataSet10[sepal_width]"))
plt.xlabel('sepal_length')
plt.ylabel('sepal_width')
plt.title('Sepal length and width analysis')
生成图像以观察变量之间的关系:
引入seaborn进行线性回归统计模型:
import seaborn as sns
sample_df = xl("IrisDataSet11[#全部]", headers=True)
sns.regplot(data = sample_df[["sepal_length","petal_length"]], x = "sepal_length", y = "petal_length")
绘图找出因变量与一个或多个自变量之间的线性关系:
引入pandas矩阵图:
from pandas.plotting import scatter_matrix
sample_df = xl("IrisDataSet13[#全部]", headers=True)
columns_to_plot = ["sepal_length", "sepal_width", "petal_length", "petal_width"]
categories = sample_df["species"].unique() # Get unique categories
colors = {category: i for i, category in enumerate(categories)}
scatter_matrix(sample_df, c=sample_df["species"].apply(lambda x: colors[x]), figsize=(6, 6), alpha=0.8)
生成图矩阵,用于分析数据集中变量对之间的关系:
如果您不会Python语言
也无妨,copilot会帮助您!
在Excel中,点击copilot,弹出右侧聊天框,要求copilot写出Python进行线性回归的代码:
复制这一段代码到PY输入框,根据提示进行适当修改即可。
并且,很快Python in Excel with copilot就要可以用了。届时,copilot将直接根据自然语言自动生成py代码并直接运行出结果,直接省掉了复制粘贴修改的步骤。
让我们期待这一切的发生!
很多人说,为什么不直接在Python中实现?
我的回答是:Python单单一个安装环境就把90%的人挡在了门外,有些人终其一生都不愿意离开Excel的。
实现这一切,只需要一个Microsoft 365商业订阅。