繁体   English   中英

在 python 中编写表达式:将字符串乘以 int

[英]writing expression in python: multiply string to int

我有两个 DataFrame:一个有字符串,另一个有 int。 我试图将这两者相乘以生成代数表达式:

df1=pd.DataFrame([1,2,3])
df2=pd.DataFrame(["x","y","z"])

预期 Output: 在此处输入图像描述

如何生成具有两种不同数据类型的表达式?

尝试

formula = ""    

# looping through tuples of (x, 1) (y, 2) (z, 3)

for val, var in zip(df1.values,df2.values):

    # formatting the value and variable in the current tuple 
    # and appending to the initially empty formula string

    formula += "{}*{}+".format(val[0], var[0])

删除最后一个+符号的肮脏快速方法

公式 = 公式[:-1]

这应该有效。

import pandas as pd 

df1=pd.DataFrame([1,2,3])
df2=pd.DataFrame(["x","y","z"])
   
formula = '+'.join([f'{var[0]}*{val[0]}' for val, var in zip(df1.values,df2.values)])
     
print(formula)

暂无
暂无

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

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