我有一个数据帧,可以从下面的代码生成
df = pd.DataFrame({'person_id' :[1,2,3],'date1': ['12/31/2007','11/25/2009','10/06/2005'],'date1derived':[0,0,0],'val1':[2,4,6],'date2': ['12/31/2017','11/25/2019','10/06/2015'],'date2derived':[0,0,0],'val2':[1,3,5],'date3':['12/31/2027','11/25/2029','10/06/2025'],'date3derived':[0,0,0],'val3':[7,9,11]})
数据帧如下所示
我想删除名称中包含“派生”的列。我尝试了不同的正则表达式,但没有得到预期的输出。你知道吗
df = df.filter(regex='[^H\dDerived]+', axis=1)
df = df.filter(regex='[^Derived]',axis=1)
你能告诉我正确的正则表达式吗?你知道吗
您可以使用零宽度负前瞻来确保字符串
derived
不会出现在任何地方:^
匹配字符串的开头(?!.*?derived)
是确保derived
不出现在字符串中的负先行模式您的模式
[^Derived]
将匹配不属于D/e/r/i/v/e/D的任何单个字符。你知道吗输出
^{} 与^{}
相关问题 更多 >
编程相关推荐