Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将数字转换为十进制(如果两者都给定)_Python_Pandas - Fatal编程技术网

Python 将数字转换为十进制(如果两者都给定)

Python 将数字转换为十进制(如果两者都给定),python,pandas,Python,Pandas,我有两列:price和dec。如本示例数据框所示: price dec 505 2 300 2 680 3 100 2 我想做的是制作另一列,它接受price和decimal,然后像这样进行转换: price dec realprice 505 2 5.05 300 2 3.00 680 3 .680 100 2 1.00 如何创建一个函数来实现此功能?使用div和** df.price.div(10**df.de

我有两列:
price
dec
。如本示例数据框所示:

price  dec
505    2
300    2
680    3
100    2
我想做的是制作另一列,它接受price和decimal,然后像这样进行转换:

price  dec  realprice
505    2    5.05
300    2    3.00
680    3    .680
100    2    1.00

如何创建一个函数来实现此功能?

使用
div
**

df.price.div(10**df.dec)
Out[510]: 
0    5.05
1    3.00
2    0.68
3    1.00
dtype: float64

只需划分列并使用
10
的幂:

df['realprice'] = df['price']/(10**df['dec'])
收益率:

   price  dec  realprice
0    505    2       5.05
1    300    2       3.00
2    680    3       0.68
3    100    2       1.00

为什么第二排不是3点?@bakka抱歉刚刚修好