数据框中的值乘法

时间:2019-01-29 05:39:33

标签: python-3.x

我试图将Millions值乘以10 ^ 6,将Thousand值乘以10 ^ 3。

由于我能够理解逻辑,因此请您提供代码方面的帮助。

这些我在列中具有的所有唯一值。我能够成功地将数字和字母分开。字母为M的地方,我需要将它们乘以10 ^ 6,而对于K,则需要将其乘以10 ^ 3。

['110.5M', '77M', '118.5M', '72M', '102M', '93M', '67M', '80M',
       '51M', '68M', '76.5M', '44M', '60M', '63M', '89M', '83.5M', '78M',
       '58M', '53.5M', '51.5M', '38M', '64.5M', '27M', '81M', '69.5M',
       '59.5M', '62M', '73.5M', '59M', '46M', '43M', '36M', '57M', '24M',
       '30M', '4M', '64M', '30.5M', '62.5M', '52M', '45M', '34M', '46.5M',
       '61M', '41.5M', '44.5M', '56.5M', '53M', '50M', '55M', '36.5M',
       '45.5M', '43.5M', '35M', '39M', '18M', '21.5M', '50.5M', '54M',
       '40.5M', '37.5M', '28.5M', '37M', '32M', '26M', '33M', '38.5M',
       '35.5M', '9M', '15.5M', '22M', '14M', '42.5M', '31.5M', '42M',
       '25M', '29.5M', '31M', '24.5M', '27.5M', '29M', '16.5M', '23M',
       '19M', '4.2M', '40M', '41M', '28M', '22.5M', '34.5M', '32.5M',
       '20M', '26.5M', '25.5M', '21M', '13M', '17.5M', '11.5M', '8M',
       '6M', '19.5M', '6.5M', '20.5M', '23.5M', '18.5M', '17M', '12.5M',
       '15M', '13.5M', '4.8M', '3M', '1.5M', '16M', '10M', '11M', '7M',
       '14.5M', '5.5M', '10.5M', '4.5M', '12M', '0', '9.5M', '8.5M', '2M',
       '1.7M', '1M', '3.6M', '7.5M', '3.8M', '5M', '2.4M', '2.9M', '4.7M',
       '4.1M', '2.1M', '600K', '2.7M', '3.4M', '2.5M', '3.2M', '3.1M',
       '4.9M', '4.3M', '2.3M', '525K', '3.9M', '1.8M', '2.2M', '4.4M',
       '1.6M', '900K', '3.7M', '3.5M', '1.9M', '450K', '775K', '650K',
       '750K', '2.8M', '1.3M', '4.6M', '2.6M', '1.2M', '375K', '3.3M',
       '270K', '950K', '550K', '1.1M', '975K', '1.4M', '725K', '425K',
       '210K', '875K', '675K', '325K', '800K', '850K', '160K', '120K',
       '825K', '925K', '625K', '240K', '500K', '575K', '200K', '250K',
       '700K', '350K', '475K', '300K', '70K', '140K', '230K', '400K',
       '280K', '100K', '60K', '260K', '180K', '220K', '50K', '290K',
       '90K', '150K', '40K', '130K', '190K', '170K', '110K', '30K', '80K',
       '20K', '10K']

请帮助我。

谢谢, K R RAO

1 个答案:

答案 0 :(得分:0)

尝试以下代码:

将熊猫作为pd导入 将numpy导入为np

    raw_val     val multiplier        result
0    110.5M 110.500          M 110500000.000
1       77M  77.000          M  77000000.000
2    118.5M 118.500          M 118500000.000
3       72M  72.000          M  72000000.000
4      102M 102.000          M 102000000.000
5       93M  93.000          M  93000000.000
6       67M  67.000          M  67000000.000
7       80M  80.000          M  80000000.000
8       51M  51.000          M  51000000.000
9       68M  68.000          M  68000000.000
10    76.5M  76.500          M  76500000.000
11      44M  44.000          M  44000000.000
12      60M  60.000          M  60000000.000
13      63M  63.000          M  63000000.000
14      89M  89.000          M  89000000.000
15    83.5M  83.500          M  83500000.000
16      78M  78.000          M  78000000.000
17      58M  58.000          M  58000000.000
18    53.5M  53.500          M  53500000.000
19    51.5M  51.500          M  51500000.000
20      38M  38.000          M  38000000.000
21    64.5...

输出

  public static interface Mapper<V,T,E> {
    public void map(KeyValue<V> v, AsyncCallback<T,E> cb);
  }