我的数据在pandas数据框中,每行的结构如下:
> df={'date1': '0 \r Created February 21, 2015', 'amt': '$50,815 raised by 498 donors'}
我希望它看起来像这样
^{pr2}$df.date1
,我的许多单元格包含回车符,有时一行有几个回车(在字符串的开头和结尾)。有没有办法从整个数据帧中删除它们?在
在某些情况下,这是可行的:
> df['date1'] = df['date1'].map(lambda x: str(x).lstrip('\r Created').rstrip('...'))
但这并不总是有效的(来自diff列的代码)。例如,以下任何一项都不会删除\r或“,”
> df['raised2'][0] = ,50,815,\r
> df['raised2'] = df['raised2'].map(lambda x: str(x).lstrip('\r').rstrip('\r'))
> rm_carriage = lambda x: re.findall("^/\r*(.*?)/\r*$", str(x))
> df.applymap(carriage_function)
这让我得到了月份,但同样的逻辑不会得到我的日期或年份
> df['month'] = df['date1'].map(lambda x: x.split()[0])
> df['day'] = df['date1'].map(lambda x: x.split()[1]) #IndexError
取决于确切的数据,但对于您的示例来说,这应该是可行的
相关问题 更多 >
编程相关推荐