当前位置: 首页 > news >正文

桂林北站到龙脊梯田自己建网站 怎么做后台

桂林北站到龙脊梯田,自己建网站 怎么做后台,精品资源共享课程网站建设论文,什么软件可以制作网页动画Python3中类的高级语法及实战 Python3(基础|高级)语法实战(|多线程|多进程|线程池|进程池技术)|多线程安全问题解决方案 Python3数据科学包系列(一):数据分析实战 Python3数据科学包系列(二):数据分析实战 Python3数据科学包系列(三):数据分析实战 一: 数据分析与挖掘认知… Python3中类的高级语法及实战 Python3(基础|高级)语法实战(|多线程|多进程|线程池|进程池技术)|多线程安全问题解决方案 Python3数据科学包系列(一):数据分析实战 Python3数据科学包系列(二):数据分析实战 Python3数据科学包系列(三):数据分析实战 一:  数据分析与挖掘认知升维 我们知道在数据分析与数据挖掘中,数据处理是一项复杂且繁琐的工作,同时也是整个数据分析过程中的最为重要的环节;数据处理一方面能提供数据的质量;另一方面能让数据更好的使用数据分析工具; 数据处理的主要内容包括: (1) 数据清洗 1.1 重复值处理 1.2 缺少值处理 (2) 数据的抽取 2.1 字段抽取 2.2 字段拆分 2.3 重置索引 2.4 记录抽取 2.5 随机抽样 2.6 通过索引抽取数据 2.7 字典数据抽取 2.8 插入数据 2.9 修改数据记录 (3) 数据交换 3.1 交换行与列 3.2  排名索引 3.3  数据合并 (4) 数据计算 4.1 简单计算 (加减乘除的计算) 4.2  数据标准化 4.3  数据分组 4.4  日期处理 .................... (5) 数据可视化 5.1 图表化 5.2 Excel|Word|PPT化 二数据处理 数据清洗认知升级:在数据分析时,海量的原始数据中存在大量不完整,不一致,有异常的数据,严重影响到数据分析的结果;索引进行数据清洗很重要,数据清洗是数据价值链中最关键的步骤。垃圾数据,即使是通过最好的分析,也将产生错误的结果,并误导业务本身.因此在数据分析过程中.数据清洗占据很大的工作量数据清洗就是处理缺失的数据以及清除无意义的信息,如删除原始数据集中的无关数据,重复数据平滑噪声数据,筛选掉与分析主题无关的数据处理缺失值,异常值等 数据清洗:一: 重复值的处理二: 缺失的处理 实例一:重复数据处理# -*- coding:utf-8 -*-import pandas as pd from pandas import Series数据清洗认知升级:在数据分析时,海量的原始数据中存在大量不完整,不一致,有异常的数据,严重影响到数据分析的结果;索引进行数据清洗很重要,数据清洗是数据价值链中最关键的步骤。垃圾数据,即使是通过最好的分析,也将产生错误的结果,并误导业务本身.因此在数据分析过程中.数据清洗占据很大的工作量数据清洗就是处理缺失的数据以及清除无意义的信息,如删除原始数据集中的无关数据,重复数据平滑噪声数据,筛选掉与分析主题无关的数据处理缺失值,异常值等数据清洗:一: 重复值的处理二: 缺失的处理 print((1)重复值的处理利用DataFrame中的duplicated方法返回一个布尔型的Series,展示是否有重复行,没有重复的行显示FALSE;有重复的则从第二行起均显示为TRUE(2)使用drop_duplicates方法用于把数据结构中行相同的数据去除(只保留一行),该方法返回一个DataFrame的数据框 ) dataFrame pd.DataFrame({age: Series([26, 85, 64, 85, 85]),name: Series([Ben, John, Jerry, John, John]) }) print(dataFrame) # 显示那些行有重复 repeatableDataFrame dataFrame.duplicated() print() print(repeatableDataFrame) print(去掉重复的行 ) print(查看name列重复行) print(dataFrame.duplicated(name)) print() print(查看age列重复行) print(dataFrame.duplicated(age)) print() print(根据age列去掉重复的行数) print(dataFrame.drop_duplicates(age))print() print(根据name列去掉重复的行数) print(dataFrame.drop_duplicates(name))运行效果: D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\dataanalysis\DataAnalysisDataCleaning.py      (1)重复值的处理           利用DataFrame中的duplicated方法返回一个布尔型的Series,展示是否有重复行,没有重复的行显示FALSE;           有重复的则从第二行起均显示为TRUE     (2)使用drop_duplicates方法用于把数据结构中行相同的数据去除(只保留一行),该方法返回一个DataFrame的数据框    age   name 0   26    Ben 1   85   John 2   64  Jerry 3   85   John 4   85   John 0    False 1    False 2    False 3     True 4     True dtype: bool     去掉重复的行 查看name列重复行 0    False 1    False 2    False 3     True 4     True dtype: bool 查看age列重复行 0    False 1    False 2    False 3     True 4     True dtype: bool 根据age列去掉重复的行数    age   name 0   26    Ben 1   85   John 2   64  Jerry 根据name列去掉重复的行数    age   name 0   26    Ben 1   85   John 2   64  Jerry Process finished with exit code 0   三:  缺失值处理 认知升维从统计上说,缺失的数据可能会产生有偏估计,从而导致样本数据不能很好地代表总体,而现实中绝大部分数据都包含缺失值,因此如何处理缺失值很重要。一般来说,缺失值的处理包括两个步骤:1)缺失数据的识别(2)缺失数据的处理 # -*- coding:utf-8 -*-import pandas as pd from pandas import Series认知升维从统计上说,缺失的数据可能会产生有偏估计,从而导致样本数据不能很好地代表总体,而现实中绝大部分数据都包含缺失值,因此如何处理缺失值很重要。一般来说,缺失值的处理包括两个步骤:1)缺失数据的识别(2)缺失数据的处理 print(读取数据来源: ) dataFrame pd.read_excel(r./file/rz.xlsx, sheet_nameSheet2) print(dataFrame)print(1)缺失值的识别Pandas使用浮点值NaN表示浮点数和非浮点数组里的缺失数据,并使用.isnull和.notnull函数来判断缺失情况 ) print() print(缺失值判断;True表示缺失,False表示非缺失) print(dataFrame.isnull())print() print(缺失值判断;True表示非缺失,False表示缺失) print(dataFrame.notnull())print(2)缺失值处理对于缺失数据的处理方式有数据补齐,删除对应行,不处理等方式2.1 dropna()去除数据结构中值为空的数据行2.2 fillna()用其他数替代NaN;有的时候直接删除空数据会影响分析结果,可以对数据进行填补2.3 fillna(method pad)用前一个数据值代替NaN )print(删除数据为空所对应的行: ) print(dataFrame.dropna()) print() print(使用数值或者任意字符替代缺失值:) print(dataFrame.fillna($)) print() print(用前一个值替换缺失的值: ) print(dataFrame.fillna(methodpad))print() print(用后一个值替换缺失的值) print(dataFrame.fillna(methodbfill))print() print(用平均数或者其它描述性统计量替代NaN) print(dataFrame.fillna(dataFrame.mean(numeric_onlyTrue)))print() print(dataFrame.mean()[填补列名:计算均值的列名]可以使用选择列的均值进行缺失值的处理 )print(dataFrame.fillna(dataFrame.mean(numeric_onlyTrue)[高代:解几])) print() print(dataFrame.fillna({列名1:值1,列名2:值2}): 可以传入一个字典,对不同的列填充不同的值) print(dataFrame.fillna({数分: 100, 高代: 0}))print(使用strip()清除字符串左,右或首尾指定的字符串,默认为空格,中间不清除) dataFrameStrip pd.DataFrame({age: Series([26, 85, 64, 85, 85]),name: Series([Ben, John , Jerry, John , John]) }) print(dataFrameStrip) print() print(dataFrameStrip[name].str.strip())print() print(只删除右边的字符n,如果不指定删除的字符串,默认删除空格) print(dataFrameStrip[name].str.rstrip()) print() print(dataFrameStrip[name].str.rstrip(n))print() print(只删除左边的字符n,如果不指定删除的字符串,默认删除空格) print(dataFrameStrip[name].str.lstrip()) print() print(dataFrameStrip[name].str.lstrip(J))运行效果: D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\dataanalysis\DataAnalysisDataMissing.py  读取数据来源:             学号  姓名  英语    数分    高代  解几 0  2308024241  成龙  76  40.0  23.0  60 1  2308024244  周怡  66  47.0  47.0  44 2  2308024251  张波  85   NaN  45.0  60 3  2308024249  朱浩  65  72.0  62.0  71 4  2308024219  封印  73  61.0  47.0  46 5  2308024201  迟培  60  71.0  76.0  71 6  2308024347  李华  67  61.0  65.0  78 7  2308024307  陈田  76  69.0   NaN  69 8  2308024326  余皓  66  65.0  61.0  71 9  2308024219  封印  73  61.0  47.0  46     1)缺失值的识别     Pandas使用浮点值NaN表示浮点数和非浮点数组里的缺失数据,并使用.isnull和.notnull函数来判断缺失情况 缺失值判断;True表示缺失,False表示非缺失       学号     姓名     英语     数分     高代     解几 0  False  False  False  False  False  False 1  False  False  False  False  False  False 2  False  False  False   True  False  False 3  False  False  False  False  False  False 4  False  False  False  False  False  False 5  False  False  False  False  False  False 6  False  False  False  False  False  False 7  False  False  False  False   True  False 8  False  False  False  False  False  False 9  False  False  False  False  False  False 缺失值判断;True表示非缺失,False表示缺失      学号    姓名    英语     数分     高代    解几 0  True  True  True   True   True  True 1  True  True  True   True   True  True 2  True  True  True  False   True  True 3  True  True  True   True   True  True 4  True  True  True   True   True  True 5  True  True  True   True   True  True 6  True  True  True   True   True  True 7  True  True  True   True  False  True 8  True  True  True   True   True  True 9  True  True  True   True   True  True     2)缺失值处理     对于缺失数据的处理方式有数据补齐,删除对应行,不处理等方式       2.1 dropna()去除数据结构中值为空的数据行       2.2 fillna()用其他数替代NaN;有的时候直接删除空数据会影响分析结果,可以对数据进行填补       2.3 fillna(method pad)用前一个数据值代替NaN 删除数据为空所对应的行:             学号  姓名  英语    数分    高代  解几 0  2308024241  成龙  76  40.0  23.0  60 1  2308024244  周怡  66  47.0  47.0  44 3  2308024249  朱浩  65  72.0  62.0  71 4  2308024219  封印  73  61.0  47.0  46 5  2308024201  迟培  60  71.0  76.0  71 6  2308024347  李华  67  61.0  65.0  78 8  2308024326  余皓  66  65.0  61.0  71 9  2308024219  封印  73  61.0  47.0  46 使用数值或者任意字符替代缺失值:            学号  姓名  英语    数分    高代  解几 0  2308024241  成龙  76  40.0  23.0  60 1  2308024244  周怡  66  47.0  47.0  44 2  2308024251  张波  85     $  45.0  60 3  2308024249  朱浩  65  72.0  62.0  71 4  2308024219  封印  73  61.0  47.0  46 5  2308024201  迟培  60  71.0  76.0  71 6  2308024347  李华  67  61.0  65.0  78 7  2308024307  陈田  76  69.0     $  69 8  2308024326  余皓  66  65.0  61.0  71 9  2308024219  封印  73  61.0  47.0  46 用前一个值替换缺失的值:             学号  姓名  英语    数分    高代  解几 0  2308024241  成龙  76  40.0  23.0  60 1  2308024244  周怡  66  47.0  47.0  44 2  2308024251  张波  85  47.0  45.0  60 3  2308024249  朱浩  65  72.0  62.0  71 4  2308024219  封印  73  61.0  47.0  46 5  2308024201  迟培  60  71.0  76.0  71 6  2308024347  李华  67  61.0  65.0  78 7  2308024307  陈田  76  69.0  65.0  69 8  2308024326  余皓  66  65.0  61.0  71 9  2308024219  封印  73  61.0  47.0  46 用后一个值替换缺失的值            学号  姓名  英语    数分    高代  解几 0  2308024241  成龙  76  40.0  23.0  60 1  2308024244  周怡  66  47.0  47.0  44 2  2308024251  张波  85  72.0  45.0  60 3  2308024249  朱浩  65  72.0  62.0  71 4  2308024219  封印  73  61.0  47.0  46 5  2308024201  迟培  60  71.0  76.0  71 6  2308024347  李华  67  61.0  65.0  78 7  2308024307  陈田  76  69.0  61.0  69 8  2308024326  余皓  66  65.0  61.0  71 9  2308024219  封印  73  61.0  47.0  46 用平均数或者其它描述性统计量替代NaN            学号  姓名  英语         数分         高代  解几 0  2308024241  成龙  76  40.000000  23.000000  60 1  2308024244  周怡  66  47.000000  47.000000  44 2  2308024251  张波  85  60.777778  45.000000  60 3  2308024249  朱浩  65  72.000000  62.000000  71 4  2308024219  封印  73  61.000000  47.000000  46 5  2308024201  迟培  60  71.000000  76.000000  71 6  2308024347  李华  67  61.000000  65.000000  78 7  2308024307  陈田  76  69.000000  52.555556  69 8  2308024326  余皓  66  65.000000  61.000000  71 9  2308024219  封印  73  61.000000  47.000000  46    dataFrame.mean()[填补列名:计算均值的列名]可以使用选择列的均值进行缺失值的处理            学号  姓名  英语    数分         高代  解几 0  2308024241  成龙  76  40.0  23.000000  60 1  2308024244  周怡  66  47.0  47.000000  44 2  2308024251  张波  85   NaN  45.000000  60 3  2308024249  朱浩  65  72.0  62.000000  71 4  2308024219  封印  73  61.0  47.000000  46 5  2308024201  迟培  60  71.0  76.000000  71 6  2308024347  李华  67  61.0  65.000000  78 7  2308024307  陈田  76  69.0  52.555556  69 8  2308024326  余皓  66  65.0  61.000000  71 9  2308024219  封印  73  61.0  47.000000  46 dataFrame.fillna({列名1:值1,列名2:值2}): 可以传入一个字典,对不同的列填充不同的值            学号  姓名  英语     数分    高代  解几 0  2308024241  成龙  76   40.0  23.0  60 1  2308024244  周怡  66   47.0  47.0  44 2  2308024251  张波  85  100.0  45.0  60 3  2308024249  朱浩  65   72.0  62.0  71 4  2308024219  封印  73   61.0  47.0  46 5  2308024201  迟培  60   71.0  76.0  71 6  2308024347  李华  67   61.0  65.0  78 7  2308024307  陈田  76   69.0   0.0  69 8  2308024326  余皓  66   65.0  61.0  71 9  2308024219  封印  73   61.0  47.0  46 使用strip()清除字符串左,右或首尾指定的字符串,默认为空格,中间不清除    age       name 0   26        Ben 1   85    John    2   64      Jerry 3   85  John      4   85       John 0      Ben 1     John 2    Jerry 3     John 4     John Name: name, dtype: object 只删除右边的字符n,如果不指定删除的字符串,默认删除空格 0       Ben 1      John 2     Jerry 3      John 4      John Name: name, dtype: object 0           Be 1      John    2        Jerry 3    John      4          Joh Name: name, dtype: object 只删除左边的字符n,如果不指定删除的字符串,默认删除空格 0          Ben 1      John    2        Jerry 3    John      4         John Name: name, dtype: object 0         Ben 1      ohn    2        erry 3    ohn      4        John Name: name, dtype: object Process finished with exit code 0   四:  数据抽取 # -*- coding:utf-8 -*-import pandas as pd from pandas import Seriesimport warningsprint(数据抽取:) extractDataFrame pd.read_excel(r./file/i_nuc.xls, sheet_nameSheet4) print(extractDataFrame.head()) print(字段抽取是抽取出某列上指定位置的数据做成新的列slice(start,stop)start表示开始位置stop表示结束 ) print() # 把’电话‘列转换为字符串 astype(str)转换类型 及修改extractDataFrame的列为字符串类型 extractDataFrame[电话] extractDataFrame[电话].astype(str) print(extractDataFrame) print(抽取电话号码的前三位,便于判断号码的品牌:) bands extractDataFrame[电话].str.slice(0, 3) print(bands) print() print(抽取手机号码的中间4位,以判断手机号码的区域:) print(extractDataFrame[电话].str.slice(3, 7)) print() print(抽取手机号的后四位:) print(extractDataFrame[电话].str.slice(7, 11))print() print(字符串拆分:字符串拆分是指指定的字符sep,拆分已有的字符串。split(sep,n,expandFalse)sep:表示用于分隔字符串的分隔符n表示分割后新增的列数expand表示是否展开为数据库,默认为False返回值: expand是否展开为数据框,默认为False )dataFrameSeries pd.read_excel(r./file/i_nuc.xls, sheet_nameSheet4) print(dataFrameSeries)print() print(现将IP列转换为字符串str,在删除首尾空格) print(dataFrameSeries[IP].str.strip()) print() print(按第一个.分成两列,1表示新增的列数) print(FutureWarning: In a future version of pandas all arguments of StringMethods.split except for the argument pat will be keyword-only.splitDataFrameSeries dataFrameSeries[IP].str.split(., 1, True)忽略警告 ) warnings.filterwarnings(ignore, categoryFutureWarning) # 忽略警告 splitDataFrameSeries dataFrameSeries[IP].str.split(., 1, True) print(splitDataFrameSeries)print(给第一列和第二类指定列名称) splitDataFrameSeries.columns [IPOne, IPTwo] print(splitDataFrameSeries)print() print(重置索引) print(重置索引是指指定某列为索引,以便于对其他数据进行操作dataFrame.set_index(列名) ) df pd.DataFrame({age: Series([26, 85, 64, 85, 85]),name: Series([Ben, John, Jerry, John, John])} ) print(df) # 指定name为索引 dataFrameReIndex df.set_index(name) print(重置索引后数据结构) print(dataFrameReIndex)运行效果: D:\program_file_worker\anaconda\python.exe D:\program_file_worker\python_source_work\SSO\grammar\dataanalysis\DataAnalysisDataExtractData.py  数据抽取:            学号            电话                 IP 0  2308024241  1.892225e10      221.205.98.55 1  2308024244  1.352226e10    183.184.226.205 2  2308024251  1.342226e10      221.205.98.55 3  2308024249  1.882226e10      222.31.51.200 4  2308024219  1.892225e10       120.207.64.3     字段抽取是抽取出某列上指定位置的数据做成新的列     slice(start,stop)     start表示开始位置     stop表示结束             学号             电话                 IP 0   2308024241  18922254812.0      221.205.98.55 1   2308024244  13522255003.0    183.184.226.205 2   2308024251  13422259938.0      221.205.98.55 3   2308024249  18822256753.0      222.31.51.200 4   2308024219  18922253721.0       120.207.64.3 5   2308024201            nan      222.31.51.200 6   2308024347  13822254373.0      222.31.59.220 7   2308024307  13322252452.0  221.205.98.55     8   2308024326  18922257681.0     183.184.230.38 9   2308024320  13322252452.0  221.205.98.55     10  2308024342  18922257681.0     183.184.230.38 11  2308024310  19934210999.0     183.184.230.39 12  2308024435  19934210911.0     185.184.230.40 13  2308024432  19934210912.0     183.154.230.41 14  2308024446  19934210913.0     183.184.231.42 15  2308024421  19934210914.0     183.154.230.43 16  2308024433  19934210915.0     173.184.230.44 17  2308024428  19934210916.0                NaN 18  2308024402  19934210917.0      183.184.230.4 19  2308024422  19934210918.0      153.144.230.7 抽取电话号码的前三位,便于判断号码的品牌: 0     189 1     135 2     134 3     188 4     189 5     nan 6     138 7     133 8     189 9     133 10    189 11    199 12    199 13    199 14    199 15    199 16    199 17    199 18    199 19    199 Name: 电话, dtype: object 抽取手机号码的中间4位,以判断手机号码的区域: 0     2225 1     2225 2     2225 3     2225 4     2225 5          6     2225 7     2225 8     2225 9     2225 10    2225 11    3421 12    3421 13    3421 14    3421 15    3421 16    3421 17    3421 18    3421 19    3421 Name: 电话, dtype: object 抽取手机号的后四位: 0     4812 1     5003 2     9938 3     6753 4     3721 5          6     4373 7     2452 8     7681 9     2452 10    7681 11    0999 12    0911 13    0912 14    0913 15    0914 16    0915 17    0916 18    0917 19    0918 Name: 电话, dtype: object    字符串拆分:        字符串拆分是指指定的字符sep,拆分已有的字符串。        split(sep,n,expandFalse)        sep:表示用于分隔字符串的分隔符        n表示分割后新增的列数        expand表示是否展开为数据库,默认为False    返回值: expand是否展开为数据框,默认为False             学号            电话                 IP 0   2308024241  1.892225e10      221.205.98.55 1   2308024244  1.352226e10    183.184.226.205 2   2308024251  1.342226e10      221.205.98.55 3   2308024249  1.882226e10      222.31.51.200 4   2308024219  1.892225e10       120.207.64.3 5   2308024201           NaN      222.31.51.200 6   2308024347  1.382225e10      222.31.59.220 7   2308024307  1.332225e10  221.205.98.55     8   2308024326  1.892226e10     183.184.230.38 9   2308024320  1.332225e10  221.205.98.55     10  2308024342  1.892226e10     183.184.230.38 11  2308024310  1.993421e10     183.184.230.39 12  2308024435  1.993421e10     185.184.230.40 13  2308024432  1.993421e10     183.154.230.41 14  2308024446  1.993421e10     183.184.231.42 15  2308024421  1.993421e10     183.154.230.43 16  2308024433  1.993421e10     173.184.230.44 17  2308024428  1.993421e10                NaN 18  2308024402  1.993421e10      183.184.230.4 19  2308024422  1.993421e10      153.144.230.7 现将IP列转换为字符串str,在删除首尾空格 0       221.205.98.55 1     183.184.226.205 2       221.205.98.55 3       222.31.51.200 4        120.207.64.3 5       222.31.51.200 6       222.31.59.220 7       221.205.98.55 8      183.184.230.38 9       221.205.98.55 10     183.184.230.38 11     183.184.230.39 12     185.184.230.40 13     183.154.230.41 14     183.184.231.42 15     183.154.230.43 16     173.184.230.44 17                NaN 18      183.184.230.4 19      153.144.230.7 Name: IP, dtype: object 按第一个.分成两列,1表示新增的列数      FutureWarning: In a future version of pandas all arguments of StringMethods.split       except for the argument pat will be keyword-only.      splitDataFrameSeries dataFrameSeries[IP].str.split(., 1, True)      忽略警告           0              1 0       221      205.98.55 1       183    184.226.205 2       221      205.98.55 3       222      31.51.200 4       120       207.64.3 5       222      31.51.200 6       222      31.59.220 7       221  205.98.55     8       183     184.230.38 9       221  205.98.55     10      183     184.230.38 11      183     184.230.39 12      185     184.230.40 13      183     154.230.41 14      183     184.231.42 15      183     154.230.43 16      173     184.230.44 17      NaN            NaN 18      183      184.230.4 19      153      144.230.7 给第一列和第二类指定列名称       IPOne          IPTwo 0       221      205.98.55 1       183    184.226.205 2       221      205.98.55 3       222      31.51.200 4       120       207.64.3 5       222      31.51.200 6       222      31.59.220 7       221  205.98.55     8       183     184.230.38 9       221  205.98.55     10      183     184.230.38 11      183     184.230.39 12      185     184.230.40 13      183     154.230.41 14      183     184.231.42 15      183     154.230.43 16      173     184.230.44 17      NaN            NaN 18      183      184.230.4 19      153      144.230.7 重置索引     重置索引是指指定某列为索引,以便于对其他数据进行操作     dataFrame.set_index(列名)    age   name 0   26    Ben 1   85   John 2   64  Jerry 3   85   John 4   85   John 重置索引后数据结构        age name       Ben     26 John    85 Jerry   64 John    85 John    85 Process finished with exit code 0
http://wiki.neutronadmin.com/news/275058/

相关文章:

  • 网站建设推广人员淘宝网站建设手机版
  • 黑龙江省住房和建设厅网站首页庐江县住房和城乡建设局网站
  • 聊城手机网站建设方案怎么运行自己做的网站
  • 网站开发需要的技术的流程郑州做网站推广地址
  • 国精产品999国精产品视频北京seo推广
  • 土特产 网站源码wordpress语言设置
  • 常见c2c网站有哪些马克杯在线设计网站
  • 代制作网站网站建设有哪些项目
  • 怎么设置网站支付功能长沙营销型网站制作
  • 文档阅读网站模板下载wordpress文章首页
  • 清远网站推广优化公司网站怎么做微信接口
  • 购物网站源代码中小学网站建设规范
  • 如何制作个人网站新能源汽车公司
  • 适合平面设计师的网站昆明网站建设公司排行
  • h5网站制作平台wordpress博客数据放在哪里的
  • 网站建设中的技术问题做特效很牛的一个外国网站
  • 浙江省住房和城乡建设厅网站 文件广东网络推广服务
  • 两栏式网站有什么网站交互做的很好 知乎
  • 做网站是怎样赚钱的杭州滨江网站开发
  • 通州青岛网站建设建可收费的网站
  • 最新网站源码下载东莞市建设安监局网站首页
  • 东莞有哪些做网站小程序网站
  • 安装安全狗网站打不开公司名称大全集最新免费
  • 模板网站制作视频做视频网站要申请什么许可证
  • 模板网站设计报价程序员给别人做的网站违法了
  • 互联网信息服务 网站备案网页优化公司
  • 建网站需要钱吗一家专门做男人的网站
  • 群晖nda做网站卡盟平台
  • 门头沟区专业网站制作网站建设做网站前期需要准备什么
  • 北京网站制作设计公司排名无锡阿凡达网站建设