替换各种字符串列

时间:2018-11-04 06:37:17

标签: python python-3.x str-replace

我正在对Kaggle competition中的PUBG数据进行一些EDA。我想将常见的游戏模式转换为标准形式,例如独奏,双人,小队,耀斑和崩溃

以下是唯一值的列表:

{'flaretpp', 'crashtpp', 'squad-fpp', 'duo-fpp', 'crashfpp', 'normal-squad',
'normal-squad-fpp', 'normal-duo-fpp', 'normal-duo', 'normal-solo', 'squad',
'duo', 'solo-fpp', 'solo', 'normal-solo-fpp', 'flarefpp'}

我基本上想从值中删除“ normal-”,“-fpp”,“ fpp”和“ tpp”子字符串。

我有一些有效的代码,但是速度很慢(大约有450万行)。我想知道是否有更快/更好的方法?

for i in range(len(data['matchType'])):
    data['matchType'][i] = data['matchType'][i].replace('normal-','')
    data['matchType'][i] = data['matchType'][i].replace('-fpp','')
    data['matchType'][i] = data['matchType'][i].replace('tpp','')
    data['matchType'][i] = data['matchType'][i].replace('fpp','')

1 个答案:

答案 0 :(得分:3)

将数据加载到Pandas系列中,并使用一个命令即可完成操作

private void button1_Click(object sender, EventArgs e)
{
   // PB.Image.Save("C:\\Users\\ISHTIAQ RANA\\Desktop\\mywork");
   SaveFileDialog f = new SaveFileDialog();
   f.Filter = "JPG(*.jpg)|*.jpg";
   if (f.ShowDialog() == DialogResult.OK)
   {
       // File.Save(f.FileName);
       PB.Image.Save(f.FileName);
   }
}

使用示例数据,您可以:

mymode.str.replace(r'normal-|-fpp|fpp|tpp', '')