如何在scala中将字符串值Map到int或double

h79rfbju  于 2021-05-29  发布在  Spark
关注(0)|答案(0)|浏览(211)

我有一些列的数据文件。我正在对值执行一些数学计算,为此,我想将非整数值列Map为int,然后在对值执行操作之后,我想重新Map它们。以下是我的列值

atom_id,molecule_id,element,type,charge
d100_1,d100,c,22,-0.128
d100_10,d100,h,3,0.132
d100_11,d100,c,29,0.002
d100_12,d100,c,22,-0.128
d100_13,d100,c,22,-0.128

假设我只想Map2列,然后只重新Map这些列的值。我已经搜索了方法并找到了字符串索引器,但它Map了df的所有列,我只需要Map特定列,然后重新Map这些特定列的值。任何帮助都将不胜感激。

//edited Part

我的数据框中有以下列

ind1,inda,logp,lumo,mutagenic,element
1,0,4.23,-1.246,yes,c
1,0,4.62,-1.387,yes,b
0,0,2.68,-1.034,no,h
1,0,6.26,-1.598,yes,c
1,0,2.4,-3.172,yes,a

基本上,我正在编写基于给定输入数据的合成数据生成代码,因此我希望使用列值,即ind1、inda、logp、lumo、诱变剂、element。一次一行,在应用了一些数学函数之后,我会得到一个由6个值组成的行,每个值代表相应的列值。现在的问题是,除了诱变剂和元素外,所有列值都是double类型。我想把这个诱变剂和元素列Map成双值,例如yes到0,no到1,这样我就可以使用它们,然后当我接收到输出行时,我会使用Map函数将生成的诱变剂值反向Map回相应的字符串值。希望这次我明白了

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题