Library
import pandas as pd
import numpy as np
import time
读取数据
df = pd.read_excel('重庆市印刷和记录媒介复制业754.xlsx')
df.dropna(axis=0, how='any')
print("表长为:", len(df))
df.head()
表长为: 754
|
ID |
企业名称 |
电话 |
企业地址 |
0 |
0 |
万州区永佳路万德印刷厂 |
15178905742 |
重庆市万州区双河口永佳路325号 |
1 |
1 |
覃彩虹 |
13594410133 |
重庆市万州区熊家镇古城大道296号 |
2 |
2 |
重庆优得利印刷有限公司 |
023-65903102 |
重庆市江津区双福工业园1幢1号 |
3 |
3 |
重庆市开州区森美印刷有限公司 |
15608330060 |
重庆市开州区云枫街道平桥社区桔乡路369号门市 |
4 |
4 |
吕兴华 |
13896015224 |
重庆市璧山区大路街道天星街23号 |
get_nums
def get_nums(s):
'''
逐位相加其ASCII码
'''
s = str(s)
nums = 0
for s0 in s:
if(s0 == '-'):
continue
try:
nums += ord(s0)
except:
print("error: ",s)
return nums
get_nums("重庆优得利印刷有限公司")
276879
平方取中法
df['nums_电话'] = df['电话'].apply(get_nums)
df['nums_电话^2'] = df['nums_电话'].apply(lambda x: np.square(x))
df['nums_企业名称'] = df['企业名称'].apply(get_nums)
df.head()
|
ID |
企业名称 |
电话 |
企业地址 |
nums_电话 |
nums_电话^2 |
nums_企业名称 |
0 |
0 |
万州区永佳路万德印刷厂 |
15178905742 |
重庆市万州区双河口永佳路325号 |
577 |
332929 |
257952 |
1 |
1 |
覃彩虹 |
13594410133 |
重庆市万州区熊家镇古城大道296号 |
562 |
315844 |
94053 |
2 |
2 |
重庆优得利印刷有限公司 |
023-65903102 |
重庆市江津区双福工业园1幢1号 |
559 |
312481 |
276879 |
3 |
3 |
重庆市开州区森美印刷有限公司 |
15608330060 |
重庆市开州区云枫街道平桥社区桔乡路369号门市 |
560 |
313600 |
364365 |
4 |
4 |
吕兴华 |
13896015224 |
重庆市璧山区大路街道天星街23号 |
569 |
323761 |
63703 |
def get_mid(x):
'''
取中间三位数作为地址
'''
return int(x/10)%1000
df['adr_电话'] = df['nums_电话^2'].apply(get_mid)
df['adr_企业名称'] = df['nums_企业名称'].apply(get_mid)
df.head(100)
|
ID |
企业名称 |
电话 |
企业地址 |
nums_电话 |
nums_电话^2 |
nums_企业名称 |
adr_电话 |
adr_企业名称 |
0 |
0 |
万州区永佳路万德印刷厂 |
15178905742 |
重庆市万州区双河口永佳路325号 |
577 |
332929 |
257952 |
292 |
795 |
1 |
1 |
覃彩虹 |
13594410133 |
重庆市万州区熊家镇古城大道296号 |
562 |
315844 |
94053 |
584 |
405 |
2 |
2 |
重庆优得利印刷有限公司 |
023-65903102 |
重庆市江津区双福工业园1幢1号 |
559 |
312481 |
276879 |
248 |
687 |
3 |
3 |
重庆市开州区森美印刷有限公司 |
15608330060 |
重庆市开州区云枫街道平桥社区桔乡路369号门市 |
560 |
313600 |
364365 |
360 |
436 |
4 |
4 |
吕兴华 |
13896015224 |
重庆市璧山区大路街道天星街23号 |
569 |
323761 |
63703 |
376 |
370 |
... |
... |
... |
... |
... |
... |
... |
... |
... |
... |
95 |
95 |
重庆涵天包装印务有限公司 |
023-72231721 |
重庆市涪陵区太极大道34号负一楼 |
558 |
311364 |
318409 |
136 |
840 |
96 |
96 |
垫江县金辉印刷厂 |
13110182246 |
重庆市垫江县周嘉镇迎春路 |
557 |
310249 |
209484 |
24 |
948 |
97 |
97 |
重庆凯翔包装印务有限公司 |
13709401186 |
重庆市永川区大安街道办事处大安工业园区 |
568 |
322624 |
321198 |
262 |
119 |
98 |
98 |
丰都县蓝图印务有限公司 |
15803661811 |
重庆市丰都县三合街道商业二路117号附2号 |
568 |
322624 |
284565 |
262 |
456 |
99 |
99 |
重庆毅然包装印刷有限公司 |
13509402066 |
重庆市綦江区文龙街道大田湾6号 |
564 |
318096 |
323964 |
809 |
396 |
100 rows × 9 columns
除留余数法
df['adr_电话_1'] = df['nums_电话^2']%