我用这种格式的电话号码:
some_text phone_number some_text
some_text (888) 501-7526 some_text
Run Code Online (Sandbox Code Playgroud)
这是搜索电话号码的更加pythonic方式
(\(\d\d\d\) \d\d\d-\d\d\d\d)
(\([0-9]+\) [0-9]+-[0-9]+)
Run Code Online (Sandbox Code Playgroud)
还是有一个更简单的表达来做到这一点?
我需要以这种格式比较日期:
'03/31/2018' # month/day/year
Run Code Online (Sandbox Code Playgroud)
我试着使用datetime模块:
from datetime import datetime as dt
dt.strptime("03/31/2018", "%m/%d/%y")
Run Code Online (Sandbox Code Playgroud)
但我得到了这个错误:
ValueError: unconverted data remains: 18
Run Code Online (Sandbox Code Playgroud)
如果我使用两位数的年份:
dt.strptime("03/31/18", "%m/%d/%y")
Run Code Online (Sandbox Code Playgroud)
它有效,但在这种情况下,我需要使用整个四位数年份进行比较
我正在调用一个函数,如果尚未加载网页,它将引发异常。我想等待2秒钟,然后重试,直到页面加载完毕。
我尝试这样:
while(True):
try:
some_funciont()
break
except:
time.sleep(2)
Run Code Online (Sandbox Code Playgroud)
但它在第一次迭代后会逸出。
如果未引发异常,该如何逃生?
我必须对基于名称的某些数据进行交叉验证。
我面临的问题是,根据来源,名称会有细微的变化,例如:
L & L AIR CONDITIONING vs L & L AIR CONDITIONING Service
BEST ROOFING vs ROOFING INC
Run Code Online (Sandbox Code Playgroud)
我有成千上万的记录,因此手动执行将非常耗时,我想尽可能地使流程自动化。
由于还有其他单词,仅用小写字母是不够的。
有哪些好的算法可以解决这个问题?
也许要计算相关性,使“ INC”或“ Service”等词的权重较低
编辑:
我尝试了difflib库
difflib.SequenceMatcher(None,name_1.lower(),name_2.lower()).ratio()
Run Code Online (Sandbox Code Playgroud)
我得到了不错的结果。
我有一个pandas DataFrame,其中包含以下格式的日期:yyyy-mm-dd:
id1 = ['2015-09-23', '2014-07-08', '2015-07-30', '2008-09-26',
'2009-07-13', '2009-09-28', '2014-04-10', '2009-06-03']
id2 = ['2011-04-15', '2015-11-30', '2015-06-15', '2015-12-01',
'2015-12-23', '2009-01-14', '2009-06-17', '2009-08-07']
id3 = ['2010-01-26', '2010-03-16', '2011-11-23', '2012-01-31',
'2012-06-08', '2012-10-26', '2013-01-07', '2013-11-12']
df = pd.DataFrame({'dates':id1 + id2 + id3,'id':['id1']*8+['id2']*8+['id3']*8})
Run Code Online (Sandbox Code Playgroud)
由此,我想得到每个id的第一个和最后一个日期.
我尝试了以下方法:
df.groupby(['id'])['dates'].agg({'sort':sorted})
Run Code Online (Sandbox Code Playgroud)
问题是我只能看到第一个日期而不是最后一个日期.我希望输出一个只包含两个元素的列表:第一个和最后一个日期.而不是整个列表.
我正在从文档中复制此示例:
import matplotlib.pyplot as plt
from skimage import data
from skimage.filters import threshold_otsu, threshold_adaptive
image = data.page()
global_thresh = threshold_otsu(image)
binary_global = image > global_thresh
block_size = 35
binary_adaptive = threshold_adaptive(image, block_size, offset=10)
fig, axes = plt.subplots(nrows=3, figsize=(7, 8))
ax0, ax1, ax2 = axes
plt.gray()
ax0.imshow(image)
ax0.set_title('Image')
ax1.imshow(binary_global)
ax1.set_title('Global thresholding')
ax2.imshow(binary_adaptive)
ax2.set_title('Adaptive thresholding')
for ax in axes:
ax.axis('off')
plt.show()
Run Code Online (Sandbox Code Playgroud)
有threshold_adaptive,但是会引发警告:
“用户警告:的返回值为threshold_local阈值图像,而threshold_adaptive返回的是阈值图像”
但是当我使用threshold_adaptive时,结果是不同的:
我正在使用以下代码与arduino通信我的电脑,但我得到标题中提到的错误,模块对象没有属性串行.
#!/usr/bin/python
# Importamos la libreira de PySerial
import serial
# Abrimos el puerto del arduino a 9600
PuertoSerie = serial.Serial('/dev/ttyACM0', 9600)
# Creamos un buble sin fin
while True:
# leemos hasta que encontarmos el final de linea
sArduino = PuertoSerie.readline()
# Mostramos el valor leido y eliminamos el salto de linea del final
print "Valor Arduino: " + sArduino.rstrip('\n')
Run Code Online (Sandbox Code Playgroud)
古玩的事情是用来工作的代码,但后来我安装了matplotlib和drawow库,我相信这已经引起了问题,但我不知道如何解决它,因为并且需要这些库的任何方式.
另一个问题是我将代码行复制到它工作的终端中,但当然我需要在.py文件中使用循环.
我正在使用一些标志来跟踪以下行为:
is_registered = True
has_paid = False
has_phone = True
if (is_registered and has_phone and has_paid):
do_something
Run Code Online (Sandbox Code Playgroud)
但是如果字段数增加,我更喜欢将它存储在字典中
user_flags = {'is_registered':True,'has_paid':False,'has_phone':True}
if (user_flags['is_registered'] and user_flags['has_paid'] and user_flags['has_phone']):
do_something
Run Code Online (Sandbox Code Playgroud)
对于少量商品而言,这可能是好的,但如果我说了超过50件商品,它就会变得非常冗长
我有一些不适合线性回归的数据:
实际上应该“完全”拟合二次函数:
P = R*I**2
Run Code Online (Sandbox Code Playgroud)
我在做这个:
model = sklearn.linear_model.LinearRegression()
X = alambres[alambre]['mediciones'][x].reshape(-1, 1)
Y = alambres[alambre]['mediciones'][y].reshape(-1, 1)
model.fit(X,Y)
Run Code Online (Sandbox Code Playgroud)
是否有机会通过执行以下操作来解决它:
model.fit([X,X**2],Y)
Run Code Online (Sandbox Code Playgroud) python pandas scikit-learn polynomials non-linear-regression
我正在做一个 NLP 项目,我必须比较来自这个数据帧的许多句子 EG 之间的相似性:
我尝试的第一件事是将数据帧与自身连接以获得波纹管格式并逐行比较:
对于大中型/大数据集,我很快就会出现内存不足的问题,例如,对于 10k 行连接,我将获得 100MM 行,而这些行无法放入 ram
我目前的方法是使用以下方式迭代数据帧:
final = pd.DataFrame()
### for each row
for i in range(len(df_sample)):
### select the corresponding vector to compare with
v = df_sample[df_sample.index.isin([i])]["use_vector"].values
### compare all cases agains the selected vector
df_sample.apply(lambda x: cosine_similarity_numba(x.use_vector,v[0]) ,axis=1)
### kept the cases with a similarity over a given th, in this case 0.6
temp = df_sample[df_sample.apply(lambda x: cosine_similarity_numba(x.use_vector,v[0]) ,axis=1) > 0.6]
### filter out the base case
temp = temp[~temp.index.isin([i])]
temp["original_question"] …Run Code Online (Sandbox Code Playgroud) python ×10
pandas ×3
nlp ×2
boolean ×1
dataframe ×1
date ×1
dictionary ×1
exception ×1
numpy ×1
polynomials ×1
regex ×1
scikit-image ×1
scikit-learn ×1
sorting ×1
threshold ×1
while-loop ×1