我正在用熊猫函数提取一些模式。但是,我有几个正则表达式。这种情况下,我如何在熊猫中使用findall N正则表达式?
例如,假设我想提取特定列中的所有数字和所有日期:
在:
dfs = pd.DataFrame(data={'c1': ['This dataset 11/12/98 contains 5,000 rows, which were sampled from a 500,000 11/12/12 row dataset spanning the same time period. Throughout these analyses',
有人告诉我,R是一个很好的数据处理工具。因此,我试图找出用R进行正则数据提取的可能性(容易)。
下面是Python提取两个关键信息的示例:
import re
str = "oh, 100.0 dollar is 621.5 yuan"
m = re.search("([\d+\.\d+]+).*?([\d+\.\d+]+)",str)
if m:
print m.group(1),"->",m.group(2)
Python的输出是:
100.0 -> 621.5
Python的结果真的很酷,但是如何在R中高效地完成呢?
我正在尝试从二进制文件中提取一些字符串。当我在linux中使用这个带有字符串的正则表达式时,它可以正常工作,但在python中不工作。
在字符串中
strings -n 3 mke2fs | grep -E '^([0-9][0-9]*(\.[0-9]+)+)'
结果:1.41.11
在python中
import re
f = open("mke2fs","rb").read()
for c in re.finditer('^([0-9][0-9]*(\.[0-9]+)+)',f):
print c.group(1)
结果是
我正在使用Python脚本来生成一些Stata命令。输出是一个文本文件。我想使用Python对属于同一个观察的行进行分组,目前情况并非如此。
这个文件中的一个典型行(让我们称之为file.txt)是这样的:
[something something] if a == 1 & b == 2 & c == 3 & [other things]
其中a、b和c是识别变量。A (a,b,c)三胞胎唯一地标识一个观测。我要做的是通过将与同一个观察相关的所有行组合在一起来对file.txt进行排序。
例如,从以下几个方面:
replace k = 1 if a == 1 &
作为python的新手,我无法从这些答案(、、)中找到什么。我想要做的是解析像这样的一些日志:
#this is what I want parse
#[time-5.40052;node-1;line-638]NOTE:BundleTrace:good! one bundle recept, it's one hop! bp_header=,destination ip=10.0.0.3,source ip=10.0.0.1,source seqno=139,payload size=345,offset size=345,src time stamp=5,hop time stam
我有100个不同的脚本名为run_1.scr...run_100.scr。在每个脚本中,我都有一行内容:
python screening_regression.py
我想在bash (或命令行)中创建一些代码,将screening_regression.py的名称改为screening_regression1.py for run_1.scr和screening_regression2.py for run_2.scr .screening_regression100.py代表run_100.scr。我不确定是否有一个简单的命令,它只允许我循环所有属于run_1.scr...run_100
这就是我的两难境地:我正在用Python语言编写一个应用程序,它允许我在平面文件(KJV bible.txt)中搜索特定字符串,并返回搜索到的行号、书籍和字符串。但是,我也想返回找到字符串的章节和诗句。这需要我转到行的开头,并获得章节号。我是Python新手,目前仍在阅读Guido van Rossum的Python教程。这是我试图为一个圣经学习小组完成的事情;一种几乎可以在任何地方运行在cmd模块中的可移植的东西。我很感谢你们的帮助。谢谢。以下是圣经章节中的一个例子的摘录:
Daniel
1:1 In the third year of the reign of Jehoiakim
我感兴趣的是将Python字符串中的所有数字乘以变量(y),如下面的示例所示,其中y= 10。
Initial Input:
"I have 15, 7, and 350 cars, boats and bikes, respectively, in my parking lot."
Desired Output:
"I have 150, 70, and 3500 cars, boats and bikes, respectively, in my parking lot."
我尝试了以下Python代码,但没有得到所需的输出。如何在Python代码中创建
我对Python和正则表达式很陌生。我在网上发现的所有例子似乎都非常模糊和模糊。例如,在这几个条目中。
2016-01-15T11:40:00-08:00 Valedictorian candidates meet for instructions
2016-02-26T15:05:00-08:00 Valedictorian written submissions due
2016-03-17 St. Patrick's Day
2016-03-25 Good Friday
2016-03-27 Easter Sunday
我希望最终
在下面的示例中,我尝试创建一个正则表达式来查找一行中的最后一组1位或多位连续数字。
据我所知,在python3中,re.search()从左到右遍历搜索字符串。
这是否解释了下面示例中的行为?具体来说,这就是“.*”的原因吗?在捕获块(锚定到前面时,如前两个示例)之前需要,以便捕获块捕获这两个数字,而'?‘当正则表达式锚定到行尾时是可选的(如最后两个示例所示?)
Python 3.1.2 (release31-maint, Sep 17 2010, 20:27:33)
>>> import re
>>> a = "hi there in t
我试图找出表格的时间范围。
12:30 Test
12:30-12:50 Test
使用简单的正则表达式((\d+):(\d+)-?)+ (.*)。它对第一个示例很好,但是对于第二个示例,匹配只从12:50开始,不捕获第一个时间范围。
你明白为什么吗?
下面是一个和Python中的一个很小的例子:
import re
print(re.search("^((\d+)(?::|h)(\d+)-?)+ (\w.*)", "12:30-12:50 Test").groups())