我在数据框中有一列,其值例如为45 + 2、98 + 3、90 + 5。我想分割值,这样我只有45,98,90,即删除+符号及其后面的所有内容。问题是大熊猫将这些数据作为对象使字符串剥离很难提出任何建议?
答案 0 :(得分:2)
将Series.str.split
用于通过索引选择列表的第一个值:
df['new'] = df['col'].str.extract('(\d+)')
print (df)
col new
0 45+2 45
1 98+3 98
2 90+5 90
或将Series.str.extract
用于值的前整数:
<form action="" method="get">
...
<input type="checkbox" name="price" id="price-1000" value="1000">
<input type="checkbox" name="price" id="price-2000" value="2000">
<input type="checkbox" name="price" id="price-3000" value="3000">
...
<input type="submit" value="send">
</form>
答案 1 :(得分:1)
您可以使用lambda函数执行此操作。
df1 = pd.DataFrame(data=['45+2','98+3','90+5'],columns=['col'])
print df1
col
0 45+2
1 98+3
2 90+5
从“ col”列中的字符串中删除不需要的部分
df1['col'] = df1['col'].map(lambda x:x.split('+')[0])
print df1
col
0 45
1 98
2 90