替换一列各种字符串
Replace a column of various strings
我正在对来自 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 万行)。我想知道是否有 faster/better 方法可以做到这一点?
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','')
将您的数据加载到 Pandas 系列中并使用单个命令完成:
mymode.str.replace(r'normal-|-fpp|fpp|tpp', '')
使用您的示例数据,您可以:
0 flare
1 crash
2 squad
3 duo
4 crash
5 squad
6 squad
7 duo
8 duo
9 solo
10 squad
11 duo
12 solo
13 solo
14 solo
15 flare
我正在对来自 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 万行)。我想知道是否有 faster/better 方法可以做到这一点?
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','')
将您的数据加载到 Pandas 系列中并使用单个命令完成:
mymode.str.replace(r'normal-|-fpp|fpp|tpp', '')
使用您的示例数据,您可以:
0 flare
1 crash
2 squad
3 duo
4 crash
5 squad
6 squad
7 duo
8 duo
9 solo
10 squad
11 duo
12 solo
13 solo
14 solo
15 flare