【学习笔记】Python大数据处理与分析——数据预处理

一、数据清洗

1、唯一值与重复值

        获取唯一值的方法是采用unique()函数,用于Series对象:

s1 = pd.Series([2, 3, 4, 1, 2, 5, 3, 6, 4, 9, 5, 3, 4, 2, 1, 2])print(s1.unique())
→[2 3 4 1 5 6 9]

        但unique()函数不能用于DataFrame对象,而drop_duplicates()函数可以:

df1 = pd.DataFrame({'a': [1, 1, 3, 2],'b': [1, 1, 6, 4],'c': [1, 1, 3, 9]})print(df1.drop_duplicates())
→  a  b  c
0  1  1  1
2  3  6  3
3  2  4  9

2、缺失值

        数据缺失分两种情况:行记录缺失(数据记录丢失)和列记录缺失。

df2 = pd.DataFrame(np.arange(12).reshape(4, 3), index=[0, 1, 2, 3], columns=['a', 'b', 'c'])
df2.iloc[1, [1]] = np.nan
df2.iloc[2, [1, 2]] = np.nanprint(df2)
→  a     b     c
0  0   1.0   2.0
1  3   NaN   5.0
2  6   NaN   NaN
3  9  10.0  11.0

(1)数据删除

        删除数据意味着减少数据特征,通常用于样本数据量很大且缺失值较少的情况。dropna()函数的原型为dropna(axis, how, thresh, subset, inplace),参数分别为:

axis:默认为0,当等于0时代表的是删除空值所在的行,当等于1时删除空值所在的列。

how:默认为‘any’,表示的是删除空值所在的行或者是列,这个主要看前面的axis参数你设定是0还是1;当参数等于‘all’,表示的是删除一阵行或者是一整列都为空值的行或者列,如果你的某一行或某一列,不全为空值的话,则不会删除,即不起作用。

thresh:一个整数x,意思是保留非空值的数量不小于x的每一行或者是每一列。

subset:指定删除特定行或列的空值所在的列或行,如果axis=0,表示如果指定行x中有空值,则删除所在的列;如果axis=1,表示如果指定列x有空值,则删除空值所在的行。

inplace:默认为False,它的意思是在处理空值时,是在原数据上处理还是在先把原数据复制一份,然后在副本上处理,在副本上处理的时候,原数据不受任何影响;如果inplace设置为True,那代表你在原数据上进行处理,原数据直接受影响。

print(df2.dropna())
→  a     b     c
0  0   1.0   2.0
3  9  10.0  11.0print(df2.dropna(axis=1))
→  a
0  0
1  3
2  6
3  9print(df2.dropna(axis=1, how='all'))
→  a     b     c
0  0   1.0   2.0
1  3   NaN   5.0
2  6   NaN   NaN
3  9  10.0  11.0print(df2.dropna(axis=1, how='any'))
→  a
0  0
1  3
2  6
3  9print(df2.dropna(axis=1, thresh=3))
→  a     c
0  0   2.0
1  3   5.0
2  6   NaN
3  9  11.0print(df2.dropna(subset=['c']))
→  a     b     c
0  0   1.0   2.0
1  3   NaN   5.0
3  9  10.0  11.0df2.dropna(subset=['c'], inplace=True)
print(df2)
→  a     b     c
0  0   1.0   2.0
1  3   NaN   5.0
3  9  10.0  11.0

(2)数据填补

        大致分为替换缺失值(对于数值型数据,使用平均数(mean)或中位数(median)等方法不足;对于分类型数据,使用众数(mode)等方法补足)和拟合缺失值(利用其他变量做模型输入进行缺失变量预测,对于数值型数据,使用回归模型补足;对于分类型数量,使用分类模型补足)。

df2['b'].fillna(df2['b'].mean(), inplace=True)
print(df2)
→  a     b     c
0  0   1.0   2.0
1  3   5.5   5.0
2  6   5.5   NaN
3  9  10.0  11.0df2['c'].fillna(df2['c'].median(), inplace=True)
print(df2)
→  a     b     c
0  0   1.0   2.0
1  3   5.5   5.0
2  6   5.5   5.0
3  9  10.0  11.0

(3)不处理

        很多模型对于缺失值有较高的容忍度或更灵活的处理方法,并且补齐处理只是用主观估计值来填补未知值,不一定完全符合客观事实,有时会改变原始的系统信息或引入新的噪声数据。常见能自动处理缺失值的模型有K-Nearest Neighbor、决策树模型、随机森林模型、神经网络、朴素贝叶斯、DBSCAN等,它们将缺失值忽略,不参与运算,或将缺失作为分布的状态参与建模过程。

3、异常值

        指数据整体呈现某种统计概率分布,但有部分偏离总体,在总体规律中有不合理表现的数据。对异常值的检测原则是:确保结合具体场景下数据有意义的情况下,查找不合逻辑的数值。通常有箱线图法、正态分布图法、模型法来检测。

        对异常值的处理一般有以下几种方法:

(1)不处理

(2)填充

(3)删除

(4)编码(将异常值单独作为一组值或类别)

(5)盖帽法(将某连续变量均值上下3倍标准差范围外的记录替换为上下3倍标准差值)

二、正则表达式

        对于正则表达式的语法详解此处不作说明,仅说明正则表达式的元字符如下所示:

1、字符串方法

(1)使用 % 格式化

%d 以整型输出
%ld 以长整型输出
%o 以八进制数形式输出整数
%x 以十六进制数形式输出整数
%u 以十进制数输出unsigned型数据(无符号数)
%c 用来输出一个字符
%s 用来输出一个字符串
%f 用来输出实数,以小数形式输出
%e 以指数形式输出实数
%g 根据大小自动选f格式或e格式,且不输出无意义的零

num = 13579print("%o" % num)
→32413print("%x" % num)
→350bprint("%u" % num)
→13579print("%s" % num)
→13579print("%f" % num)
→13579.000000print("%e" % num)
→1.357900e+04print("%g" % num)
→13579print("%.2f" % num)
→13579.00

 (2)使用format()函数格式化

print("{}{}".format('A', 'B'))            # 不带编号,必须一一对应
→ABprint("{1}{0}{1}".format('A', 'B'))       # 带编号打乱顺序
→BABprint("{a}{b}{a}".format(a='A', b='B'))   # 带关键字
→ABA
① 取位数
print("{:10}".format('hello'))                    # 取10位默认左对齐
→hello print("{0} to {1:.2f}".format(np.pi, np.pi))      # 取两位小数
→3.141592653589793 to 3.14print("{0:5.2} to {0:5.2f}".format(np.pi, np.pi)) # 保留两位有效数字与取两位小数对比
→  3.1 to  3.14
② 进制转化
print("int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}".format(16))
→int: 16; hex: 10; oct: 20; bin: 10000print("{0} in hex is: {0:#x}\n{1} in oct is: {0:#o}".format(18, 10))
→18 in hex is: 0x1210 in oct is: 0o22
③ 字符串对齐与位数补全
print("{:<20}".format("hello world!"))
→hello world!        print("{:^20}".format("hello world!"))
→    hello world!    print("{:>20}".format("hello world!"))
→        hello world!print("{:*<20}".format("hello world!"))
→hello world!********print("{:-^20}".format("hello world!"))
→----hello world!----print("{:#>20}".format("hello world!"))
→########hello world!print("{:0=10}".format(12345))
→0000012345print("{:%}".format(0.125))
→12.500000%print("my name is {name}, my age is {age}, and my QQ is {qq}.".format(name="67x", age=21, qq="409867818"))
→my name is 67x, my age is 21, and my QQ is 409867818.position = (1, 2, 3)
print("X: {0[0]}; Y: {0[1]}; Z: {0[2]}".format(position))
→X: 1; Y: 2; Z: 3

(3)使用f-string方法格式化

name = "67x"
age = 21print(f"my name is {name}, my age is {age}")
→my name is 67x, my age is 21width = 10
precision = 4
value = 11 / 3print(f"result: {value:{width}.{precision}}")
→result:      3.667a = 10
b = 5
c = 3
pi = np.piprint(f"{pi:{a}.{b}}")
→    3.1416print(f"{pi:{a}.{c}f}")
→     3.142print(f"{a * 2}")
→20print(f"{name * 3}")
→67x67x67x

2、re模块

(1)re.match()

        函数原型为re.match(pattern, string, flags=0),参数分别为:

pattern:匹配的正则表达式

string:要匹配的字符串

flags:标志位,控制正则表达式的匹配方式(如是否区分大小写、多行匹配等)

print(re.match("www", "www.baidu.com").span())
→(0, 3)print(re.match("com", "www.baidu.com"))
→Nonestr1 = "Cats are smarter than dogs"
matchObj1 = re.match(r"(.*) are (.*?) (.*)", str1, re.M | re.I)print(matchObj1.group())
→Cats are smarter than dogsprint(matchObj1.group(1))
→Catsprint(matchObj1.group(2))
→smarterprint(matchObj1.group(3))
→than dogsmatchObj2 = re.match(r"(.*) are (.*?) .*", str1, re.M | re.I)print(matchObj2.group())
→Cats are smarter than dogsprint(matchObj2.group(1))
→Catsprint(matchObj2.group(2))
→smartermatchObj3 = re.match(r"(.*) are (.*) .*", str1, re.M | re.I)print(matchObj3.group())
→Cats are smarter than dogsprint(matchObj3.group(1))
→Catsprint(matchObj3.group(2))
→smarter thanmatchObj4 = re.match(r"(.*) are (.*)", str1, re.M | re.I)print(matchObj4.group())
→Cats are smarter than dogsprint(matchObj4.group(1))
→Catsprint(matchObj4.group(2))
→smarter than dogs

        re.match(r"(.*) are (.*) .*", str1, re.M | re.I) 的具体匹配过程如下:

re.match() 函数从头开始匹配字符串 str1,尝试将其分成若干个子串,使每个子串能够匹配正则表达式模式;

匹配过程从左到右进行。模式中的 (.*) 匹配任意数量的任意字符,并将匹配的结果保存在分组 1 中。因为这是一个贪婪模式,它会尽可能多地匹配字符,直到遇到匹配模式中的下一个字符或结束位置。在这个例子中,(.*) 匹配了 "Cats";

模式中的 " are " 匹配了字符串中的 " are ";

模式中的 (.*?) 匹配任意数量的任意字符,并将匹配的结果保存在分组 2 中。因为这是一个非贪婪模式。它会尽可能少地匹配字符,直到遇到匹配模式中的下一个字符或结束位置。在这个例子中,(.*?) 匹配了 "smarter";

模式中的 " " 匹配了字符串中的空格;

.* 匹配任意数量的任意字符,并将其忽略。在这个例子中,它匹配了 "than dogs"。

(2)re.search()

        函数原型为re.search(pattern, string, flags=0),参数分别为:

pattern:匹配的正则表达式

string:要匹配的字符串

flags:标志位,控制正则表达式的匹配方式(如是否区分大小写、多行匹配等)

print(re.search("www", "www.baidu.com").span())
→(0, 3)print(re.search("baidu", "www.baidu.com").span())
→(4, 9)print(re.search("com", "www.baidu.com").span())
→(10, 13)print(re.search("\.", "www.baidu.com"))
→<re.Match object; span=(3, 4), match='.'>print(re.search("67x", "www.baidu.com"))
→None

(3)re.sub()

        函数原型为re.sub(pattern, repl, string, count=0),参数分别为:

pattern:正则表达式中的模式字符串

repl:替换的字符串,也可为一个函数

string:要被查找替换的字符串

count:模式匹配后替换的最大次数,默认为0,表示替换所有匹配

phone = "2020-221-342#67x"print(re.sub(r"#.*$", "", phone))    # 删除#后字符
→2020-221-342print(re.sub(r"-", "*", phone))      # 删除-符号
→2020*221*342#67x

(4)re.compile()

        函数原型为re.compile(pattern[, flags]),参数分别为:

pattern:一个字符串形式的正则表达式

flags:匹配模式,可选:

        re.I:忽略大小写;

        re.L:表示特殊字符\w、\W、\b、\B、\s、\S;

        re.M:多行模式;

        re.S:即.,并且包含换行符在内的任意字符(.不包括换行符)

        re.U:表示特殊字符集\w、\W、\b、\B、\d、\D、\s、\S;

        re.X:为增加可读性,忽略空格和#后注释

pattern1 = re.compile(r"\d+")        # 匹配至少1个数字
str2 = "LiuXin67X"print(pattern1.match(str2))          # 查找头部没有匹配
→NonematchObj5 = pattern1.match(str2, 6, len(str2))print(matchObj5)                     # 返回一个Match对象
→<re.Match object; span=(6, 8), match='67'>print(matchObj5.group())
→67print(matchObj5.start())
→6print(matchObj5.end())
→8print(matchObj5.span())
→(6, 8)pattern2 = re.compile(r"([a-z]+) ([a-z]+)", re.I)
str3 = "Hello World Wide Web"
matchObj6 = pattern2.match(str3)print(matchObj6)
→<re.Match object; span=(0, 11), match='Hello World'>print(matchObj6.group())             # 返回匹配成功的整个子串
→Hello Worldprint(matchObj6.span())              # 返回匹配成功的整个子串的索引
→(0, 11)print(matchObj6.group(1))            # 返回第一个分组匹配成功的子串
→Helloprint(matchObj6.span(1))             # 返回第一个分组匹配成功的子串的索引
→(0, 5)print(matchObj6.group(2))            # 返回第二个分组匹配成功的子串
→Worldprint(matchObj6.span(2))             # 返回第二个分组匹配成功的子串的索引
→(6, 11)print(matchObj6.groups())            # 等价于(matchObj6.groups(1), matchObj6.groups(2), ...)
→('Hello', 'World')

 (5)findall()

        函数原型为findall(string[, pos[, endpos]]),参数分别为:

string:待匹配的字符串

pos:指定字符串的起始位置,默认为0

endpos:指定字符串的结束位置,默认为字符串长度

str4 = "baidu 123 google 456."print(pattern1.findall(str4))
→['123', '456']print(pattern1.findall(str4, 7, 19))
→['23', '45']

 (6)finditer()

        函数原型为finditer(string[, pos[, endpos]]),参数分别为:

string:待匹配的字符串

pos:指定字符串的起始位置,默认为0

endpos:指定字符串的结束位置,默认为字符串长度

        功能是在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。

it = re.finditer(pattern1, str4)
for i in it:print(i.group())
→123456

(7)split()

        函数原型为re.split(pattern, string[, maxsplit=0, flag=0]),参数分别为:

pattern:匹配的正则表达式

string:要匹配的字符串

maxsplit:分割次数,默认为0,表示不限制次数

flags:标志位,控制正则表达式的匹配方式(如是否区分大小写、多行匹配等)

str5 = " baidu 123 google 456."print(re.split("x", str4))
→['baidu 123 google 456.']print(re.split("\W+", str4))
→['baidu', '123', 'google', '456', '']print(re.split("\W+", str4, 1))
→['baidu', '123 google 456.']print(re.split("\W+", str4, 2))
→['baidu', '123', 'google 456.']print(re.split("(\W+)", str4))
→['baidu', ' ', '123', ' ', 'google', ' ', '456', '.', '']print(re.split("\W+", str5))
→['', 'baidu', '123', 'google', '456', '']print(re.split("(\W+)", str5))
→['', ' ', 'baidu', ' ', '123', ' ', 'google', ' ', '456', '.', '']

三、数据规整

1、聚合、分组及数据透视

(1)分组与聚合

        数据分组的核心思想是“拆分-组织-合并”,聚合通常使用聚合函数(如count()、sum()、mean()等)。

df3 = pd.DataFrame({"A": ['a', 'b', 'c', 'a', 'b', 'a'], "B": [10, 15, 5, 2, 8, 4]})
df4 = pd.DataFrame({"A": ['a', 'b', 'c', 'b', 'a'], "B1": [3, 5, 6, 8, 9], "B2": [2, 5, 9, 6, 8]})
combine1 = df3["B"].groupby(df3["A"])
combine2 = df3.groupby(df3.dtypes, axis=1)
combine3 = df4.groupby("A")print(combine1.mean())
→Aa     5.333333b    11.500000c     5.000000Name: B, dtype: float64print(combine1.size())
→Aa    3b    2c    1Name: B, dtype: int64print(dict(list(combine2)))
→{dtype('int64'):     B0  101  152   53   24   85   4, dtype('O'):   A0  a1  b2  c3  a4  b5  a}print(combine1.agg("mean"))
→Aa     5.333333b    11.500000c     5.000000Name: B, dtype: float64print(combine1.agg(["mean", "sum", "std"]))
→       mean  sum       std
A                          
a   5.333333   16  4.163332
b  11.500000   23  4.949747
c   5.000000    5       NaNprint(combine3.agg({"B1": "mean", "B2": "sum"}))
→   B1  B2
A         
a  6.0  10
b  6.5  11
c  6.0   9

(2)数据透视表

df5 = pd.DataFrame({"level": ['a', 'b', 'c', 'b', 'a'],"key": ["one", "two", "one", "two", "one"],"num1": [3, 5, 6, 8, 9],"num2": [2, 5, 9, 6, 8]})
print(df5.pivot_table(index="key", columns="level"))
→     num1           num2          
level    a    b    c    a    b    c
key                                
one    6.0  NaN  6.0  5.0  NaN  9.0
two    NaN  6.5  NaN  NaN  5.5  NaNprint(pd.crosstab(df5.key, df5.level, margins=True))    # 计算分组频率
→level a  b  c  All
key                
one    2  0  1    3
two    0  2  0    2
All    2  2  1    5

2、数据变换与数据规约

(1)规范化

        主要分为标准化和归一化,都属于线性变换,主要区别为:归一化只与最大值和最小值有关,容易受到极值点影响,输出范围为0~1;标准化是依据样本总体的变换,每个样本点都有贡献,输出范围为实数范围。这里使用iris数据集演示:

transfer1 = MinMaxScaler(feature_range=(0, 1))
transfer2 = StandardScaler()
iris = load_iris()
df6 = transfer1.fit_transform(iris.data)
df7 = transfer2.fit_transform(iris.data)print(iris.data)
→[[5.1 3.5 1.4 0.2][4.9 3.  1.4 0.2][4.7 3.2 1.3 0.2][4.6 3.1 1.5 0.2][5.  3.6 1.4 0.2][5.4 3.9 1.7 0.4][4.6 3.4 1.4 0.3][5.  3.4 1.5 0.2][4.4 2.9 1.4 0.2][4.9 3.1 1.5 0.1][5.4 3.7 1.5 0.2][4.8 3.4 1.6 0.2][4.8 3.  1.4 0.1][4.3 3.  1.1 0.1][5.8 4.  1.2 0.2][5.7 4.4 1.5 0.4][5.4 3.9 1.3 0.4][5.1 3.5 1.4 0.3][5.7 3.8 1.7 0.3][5.1 3.8 1.5 0.3][5.4 3.4 1.7 0.2][5.1 3.7 1.5 0.4][4.6 3.6 1.  0.2][5.1 3.3 1.7 0.5][4.8 3.4 1.9 0.2][5.  3.  1.6 0.2][5.  3.4 1.6 0.4][5.2 3.5 1.5 0.2][5.2 3.4 1.4 0.2][4.7 3.2 1.6 0.2][4.8 3.1 1.6 0.2][5.4 3.4 1.5 0.4][5.2 4.1 1.5 0.1][5.5 4.2 1.4 0.2][4.9 3.1 1.5 0.2][5.  3.2 1.2 0.2][5.5 3.5 1.3 0.2][4.9 3.6 1.4 0.1][4.4 3.  1.3 0.2][5.1 3.4 1.5 0.2][5.  3.5 1.3 0.3][4.5 2.3 1.3 0.3][4.4 3.2 1.3 0.2][5.  3.5 1.6 0.6][5.1 3.8 1.9 0.4][4.8 3.  1.4 0.3][5.1 3.8 1.6 0.2][4.6 3.2 1.4 0.2][5.3 3.7 1.5 0.2][5.  3.3 1.4 0.2][7.  3.2 4.7 1.4][6.4 3.2 4.5 1.5][6.9 3.1 4.9 1.5][5.5 2.3 4.  1.3][6.5 2.8 4.6 1.5][5.7 2.8 4.5 1.3][6.3 3.3 4.7 1.6][4.9 2.4 3.3 1. ][6.6 2.9 4.6 1.3][5.2 2.7 3.9 1.4][5.  2.  3.5 1. ][5.9 3.  4.2 1.5][6.  2.2 4.  1. ][6.1 2.9 4.7 1.4][5.6 2.9 3.6 1.3][6.7 3.1 4.4 1.4][5.6 3.  4.5 1.5][5.8 2.7 4.1 1. ][6.2 2.2 4.5 1.5][5.6 2.5 3.9 1.1][5.9 3.2 4.8 1.8][6.1 2.8 4.  1.3][6.3 2.5 4.9 1.5][6.1 2.8 4.7 1.2][6.4 2.9 4.3 1.3][6.6 3.  4.4 1.4][6.8 2.8 4.8 1.4][6.7 3.  5.  1.7][6.  2.9 4.5 1.5][5.7 2.6 3.5 1. ][5.5 2.4 3.8 1.1][5.5 2.4 3.7 1. ][5.8 2.7 3.9 1.2][6.  2.7 5.1 1.6][5.4 3.  4.5 1.5][6.  3.4 4.5 1.6][6.7 3.1 4.7 1.5][6.3 2.3 4.4 1.3][5.6 3.  4.1 1.3][5.5 2.5 4.  1.3][5.5 2.6 4.4 1.2][6.1 3.  4.6 1.4][5.8 2.6 4.  1.2][5.  2.3 3.3 1. ][5.6 2.7 4.2 1.3][5.7 3.  4.2 1.2][5.7 2.9 4.2 1.3][6.2 2.9 4.3 1.3][5.1 2.5 3.  1.1][5.7 2.8 4.1 1.3][6.3 3.3 6.  2.5][5.8 2.7 5.1 1.9][7.1 3.  5.9 2.1][6.3 2.9 5.6 1.8][6.5 3.  5.8 2.2][7.6 3.  6.6 2.1][4.9 2.5 4.5 1.7][7.3 2.9 6.3 1.8][6.7 2.5 5.8 1.8][7.2 3.6 6.1 2.5][6.5 3.2 5.1 2. ][6.4 2.7 5.3 1.9][6.8 3.  5.5 2.1][5.7 2.5 5.  2. ][5.8 2.8 5.1 2.4][6.4 3.2 5.3 2.3][6.5 3.  5.5 1.8][7.7 3.8 6.7 2.2][7.7 2.6 6.9 2.3][6.  2.2 5.  1.5][6.9 3.2 5.7 2.3][5.6 2.8 4.9 2. ][7.7 2.8 6.7 2. ][6.3 2.7 4.9 1.8][6.7 3.3 5.7 2.1][7.2 3.2 6.  1.8][6.2 2.8 4.8 1.8][6.1 3.  4.9 1.8][6.4 2.8 5.6 2.1][7.2 3.  5.8 1.6][7.4 2.8 6.1 1.9][7.9 3.8 6.4 2. ][6.4 2.8 5.6 2.2][6.3 2.8 5.1 1.5][6.1 2.6 5.6 1.4][7.7 3.  6.1 2.3][6.3 3.4 5.6 2.4][6.4 3.1 5.5 1.8][6.  3.  4.8 1.8][6.9 3.1 5.4 2.1][6.7 3.1 5.6 2.4][6.9 3.1 5.1 2.3][5.8 2.7 5.1 1.9][6.8 3.2 5.9 2.3][6.7 3.3 5.7 2.5][6.7 3.  5.2 2.3][6.3 2.5 5.  1.9][6.5 3.  5.2 2. ][6.2 3.4 5.4 2.3][5.9 3.  5.1 1.8]]print(df6)
→[[0.22222222 0.625      0.06779661 0.04166667][0.16666667 0.41666667 0.06779661 0.04166667][0.11111111 0.5        0.05084746 0.04166667][0.08333333 0.45833333 0.08474576 0.04166667][0.19444444 0.66666667 0.06779661 0.04166667][0.30555556 0.79166667 0.11864407 0.125     ][0.08333333 0.58333333 0.06779661 0.08333333][0.19444444 0.58333333 0.08474576 0.04166667][0.02777778 0.375      0.06779661 0.04166667][0.16666667 0.45833333 0.08474576 0.        ][0.30555556 0.70833333 0.08474576 0.04166667][0.13888889 0.58333333 0.10169492 0.04166667][0.13888889 0.41666667 0.06779661 0.        ][0.         0.41666667 0.01694915 0.        ][0.41666667 0.83333333 0.03389831 0.04166667][0.38888889 1.         0.08474576 0.125     ][0.30555556 0.79166667 0.05084746 0.125     ][0.22222222 0.625      0.06779661 0.08333333][0.38888889 0.75       0.11864407 0.08333333][0.22222222 0.75       0.08474576 0.08333333][0.30555556 0.58333333 0.11864407 0.04166667][0.22222222 0.70833333 0.08474576 0.125     ][0.08333333 0.66666667 0.         0.04166667][0.22222222 0.54166667 0.11864407 0.16666667][0.13888889 0.58333333 0.15254237 0.04166667][0.19444444 0.41666667 0.10169492 0.04166667][0.19444444 0.58333333 0.10169492 0.125     ][0.25       0.625      0.08474576 0.04166667][0.25       0.58333333 0.06779661 0.04166667][0.11111111 0.5        0.10169492 0.04166667][0.13888889 0.45833333 0.10169492 0.04166667][0.30555556 0.58333333 0.08474576 0.125     ][0.25       0.875      0.08474576 0.        ][0.33333333 0.91666667 0.06779661 0.04166667][0.16666667 0.45833333 0.08474576 0.04166667][0.19444444 0.5        0.03389831 0.04166667][0.33333333 0.625      0.05084746 0.04166667][0.16666667 0.66666667 0.06779661 0.        ][0.02777778 0.41666667 0.05084746 0.04166667][0.22222222 0.58333333 0.08474576 0.04166667][0.19444444 0.625      0.05084746 0.08333333][0.05555556 0.125      0.05084746 0.08333333][0.02777778 0.5        0.05084746 0.04166667][0.19444444 0.625      0.10169492 0.20833333][0.22222222 0.75       0.15254237 0.125     ][0.13888889 0.41666667 0.06779661 0.08333333][0.22222222 0.75       0.10169492 0.04166667][0.08333333 0.5        0.06779661 0.04166667][0.27777778 0.70833333 0.08474576 0.04166667][0.19444444 0.54166667 0.06779661 0.04166667][0.75       0.5        0.62711864 0.54166667][0.58333333 0.5        0.59322034 0.58333333][0.72222222 0.45833333 0.66101695 0.58333333][0.33333333 0.125      0.50847458 0.5       ][0.61111111 0.33333333 0.61016949 0.58333333][0.38888889 0.33333333 0.59322034 0.5       ][0.55555556 0.54166667 0.62711864 0.625     ][0.16666667 0.16666667 0.38983051 0.375     ][0.63888889 0.375      0.61016949 0.5       ][0.25       0.29166667 0.49152542 0.54166667][0.19444444 0.         0.42372881 0.375     ][0.44444444 0.41666667 0.54237288 0.58333333][0.47222222 0.08333333 0.50847458 0.375     ][0.5        0.375      0.62711864 0.54166667][0.36111111 0.375      0.44067797 0.5       ][0.66666667 0.45833333 0.57627119 0.54166667][0.36111111 0.41666667 0.59322034 0.58333333][0.41666667 0.29166667 0.52542373 0.375     ][0.52777778 0.08333333 0.59322034 0.58333333][0.36111111 0.20833333 0.49152542 0.41666667][0.44444444 0.5        0.6440678  0.70833333][0.5        0.33333333 0.50847458 0.5       ][0.55555556 0.20833333 0.66101695 0.58333333][0.5        0.33333333 0.62711864 0.45833333][0.58333333 0.375      0.55932203 0.5       ][0.63888889 0.41666667 0.57627119 0.54166667][0.69444444 0.33333333 0.6440678  0.54166667][0.66666667 0.41666667 0.6779661  0.66666667][0.47222222 0.375      0.59322034 0.58333333][0.38888889 0.25       0.42372881 0.375     ][0.33333333 0.16666667 0.47457627 0.41666667][0.33333333 0.16666667 0.45762712 0.375     ][0.41666667 0.29166667 0.49152542 0.45833333][0.47222222 0.29166667 0.69491525 0.625     ][0.30555556 0.41666667 0.59322034 0.58333333][0.47222222 0.58333333 0.59322034 0.625     ][0.66666667 0.45833333 0.62711864 0.58333333][0.55555556 0.125      0.57627119 0.5       ][0.36111111 0.41666667 0.52542373 0.5       ][0.33333333 0.20833333 0.50847458 0.5       ][0.33333333 0.25       0.57627119 0.45833333][0.5        0.41666667 0.61016949 0.54166667][0.41666667 0.25       0.50847458 0.45833333][0.19444444 0.125      0.38983051 0.375     ][0.36111111 0.29166667 0.54237288 0.5       ][0.38888889 0.41666667 0.54237288 0.45833333][0.38888889 0.375      0.54237288 0.5       ][0.52777778 0.375      0.55932203 0.5       ][0.22222222 0.20833333 0.33898305 0.41666667][0.38888889 0.33333333 0.52542373 0.5       ][0.55555556 0.54166667 0.84745763 1.        ][0.41666667 0.29166667 0.69491525 0.75      ][0.77777778 0.41666667 0.83050847 0.83333333][0.55555556 0.375      0.77966102 0.70833333][0.61111111 0.41666667 0.81355932 0.875     ][0.91666667 0.41666667 0.94915254 0.83333333][0.16666667 0.20833333 0.59322034 0.66666667][0.83333333 0.375      0.89830508 0.70833333][0.66666667 0.20833333 0.81355932 0.70833333][0.80555556 0.66666667 0.86440678 1.        ][0.61111111 0.5        0.69491525 0.79166667][0.58333333 0.29166667 0.72881356 0.75      ][0.69444444 0.41666667 0.76271186 0.83333333][0.38888889 0.20833333 0.6779661  0.79166667][0.41666667 0.33333333 0.69491525 0.95833333][0.58333333 0.5        0.72881356 0.91666667][0.61111111 0.41666667 0.76271186 0.70833333][0.94444444 0.75       0.96610169 0.875     ][0.94444444 0.25       1.         0.91666667][0.47222222 0.08333333 0.6779661  0.58333333][0.72222222 0.5        0.79661017 0.91666667][0.36111111 0.33333333 0.66101695 0.79166667][0.94444444 0.33333333 0.96610169 0.79166667][0.55555556 0.29166667 0.66101695 0.70833333][0.66666667 0.54166667 0.79661017 0.83333333][0.80555556 0.5        0.84745763 0.70833333][0.52777778 0.33333333 0.6440678  0.70833333][0.5        0.41666667 0.66101695 0.70833333][0.58333333 0.33333333 0.77966102 0.83333333][0.80555556 0.41666667 0.81355932 0.625     ][0.86111111 0.33333333 0.86440678 0.75      ][1.         0.75       0.91525424 0.79166667][0.58333333 0.33333333 0.77966102 0.875     ][0.55555556 0.33333333 0.69491525 0.58333333][0.5        0.25       0.77966102 0.54166667][0.94444444 0.41666667 0.86440678 0.91666667][0.55555556 0.58333333 0.77966102 0.95833333][0.58333333 0.45833333 0.76271186 0.70833333][0.47222222 0.41666667 0.6440678  0.70833333][0.72222222 0.45833333 0.74576271 0.83333333][0.66666667 0.45833333 0.77966102 0.95833333][0.72222222 0.45833333 0.69491525 0.91666667][0.41666667 0.29166667 0.69491525 0.75      ][0.69444444 0.5        0.83050847 0.91666667][0.66666667 0.54166667 0.79661017 1.        ][0.66666667 0.41666667 0.71186441 0.91666667][0.55555556 0.20833333 0.6779661  0.75      ][0.61111111 0.41666667 0.71186441 0.79166667][0.52777778 0.58333333 0.74576271 0.91666667][0.44444444 0.41666667 0.69491525 0.70833333]]print(df7)
→[[-9.00681170e-01  1.01900435e+00 -1.34022653e+00 -1.31544430e+00][-1.14301691e+00 -1.31979479e-01 -1.34022653e+00 -1.31544430e+00][-1.38535265e+00  3.28414053e-01 -1.39706395e+00 -1.31544430e+00][-1.50652052e+00  9.82172869e-02 -1.28338910e+00 -1.31544430e+00][-1.02184904e+00  1.24920112e+00 -1.34022653e+00 -1.31544430e+00][-5.37177559e-01  1.93979142e+00 -1.16971425e+00 -1.05217993e+00][-1.50652052e+00  7.88807586e-01 -1.34022653e+00 -1.18381211e+00][-1.02184904e+00  7.88807586e-01 -1.28338910e+00 -1.31544430e+00][-1.74885626e+00 -3.62176246e-01 -1.34022653e+00 -1.31544430e+00][-1.14301691e+00  9.82172869e-02 -1.28338910e+00 -1.44707648e+00][-5.37177559e-01  1.47939788e+00 -1.28338910e+00 -1.31544430e+00][-1.26418478e+00  7.88807586e-01 -1.22655167e+00 -1.31544430e+00][-1.26418478e+00 -1.31979479e-01 -1.34022653e+00 -1.44707648e+00][-1.87002413e+00 -1.31979479e-01 -1.51073881e+00 -1.44707648e+00][-5.25060772e-02  2.16998818e+00 -1.45390138e+00 -1.31544430e+00][-1.73673948e-01  3.09077525e+00 -1.28338910e+00 -1.05217993e+00][-5.37177559e-01  1.93979142e+00 -1.39706395e+00 -1.05217993e+00][-9.00681170e-01  1.01900435e+00 -1.34022653e+00 -1.18381211e+00][-1.73673948e-01  1.70959465e+00 -1.16971425e+00 -1.18381211e+00][-9.00681170e-01  1.70959465e+00 -1.28338910e+00 -1.18381211e+00][-5.37177559e-01  7.88807586e-01 -1.16971425e+00 -1.31544430e+00][-9.00681170e-01  1.47939788e+00 -1.28338910e+00 -1.05217993e+00][-1.50652052e+00  1.24920112e+00 -1.56757623e+00 -1.31544430e+00][-9.00681170e-01  5.58610819e-01 -1.16971425e+00 -9.20547742e-01][-1.26418478e+00  7.88807586e-01 -1.05603939e+00 -1.31544430e+00][-1.02184904e+00 -1.31979479e-01 -1.22655167e+00 -1.31544430e+00][-1.02184904e+00  7.88807586e-01 -1.22655167e+00 -1.05217993e+00][-7.79513300e-01  1.01900435e+00 -1.28338910e+00 -1.31544430e+00][-7.79513300e-01  7.88807586e-01 -1.34022653e+00 -1.31544430e+00][-1.38535265e+00  3.28414053e-01 -1.22655167e+00 -1.31544430e+00][-1.26418478e+00  9.82172869e-02 -1.22655167e+00 -1.31544430e+00][-5.37177559e-01  7.88807586e-01 -1.28338910e+00 -1.05217993e+00][-7.79513300e-01  2.40018495e+00 -1.28338910e+00 -1.44707648e+00][-4.16009689e-01  2.63038172e+00 -1.34022653e+00 -1.31544430e+00][-1.14301691e+00  9.82172869e-02 -1.28338910e+00 -1.31544430e+00][-1.02184904e+00  3.28414053e-01 -1.45390138e+00 -1.31544430e+00][-4.16009689e-01  1.01900435e+00 -1.39706395e+00 -1.31544430e+00][-1.14301691e+00  1.24920112e+00 -1.34022653e+00 -1.44707648e+00][-1.74885626e+00 -1.31979479e-01 -1.39706395e+00 -1.31544430e+00][-9.00681170e-01  7.88807586e-01 -1.28338910e+00 -1.31544430e+00][-1.02184904e+00  1.01900435e+00 -1.39706395e+00 -1.18381211e+00][-1.62768839e+00 -1.74335684e+00 -1.39706395e+00 -1.18381211e+00][-1.74885626e+00  3.28414053e-01 -1.39706395e+00 -1.31544430e+00][-1.02184904e+00  1.01900435e+00 -1.22655167e+00 -7.88915558e-01][-9.00681170e-01  1.70959465e+00 -1.05603939e+00 -1.05217993e+00][-1.26418478e+00 -1.31979479e-01 -1.34022653e+00 -1.18381211e+00][-9.00681170e-01  1.70959465e+00 -1.22655167e+00 -1.31544430e+00][-1.50652052e+00  3.28414053e-01 -1.34022653e+00 -1.31544430e+00][-6.58345429e-01  1.47939788e+00 -1.28338910e+00 -1.31544430e+00][-1.02184904e+00  5.58610819e-01 -1.34022653e+00 -1.31544430e+00][ 1.40150837e+00  3.28414053e-01  5.35408562e-01  2.64141916e-01][ 6.74501145e-01  3.28414053e-01  4.21733708e-01  3.95774101e-01][ 1.28034050e+00  9.82172869e-02  6.49083415e-01  3.95774101e-01][-4.16009689e-01 -1.74335684e+00  1.37546573e-01  1.32509732e-01][ 7.95669016e-01 -5.92373012e-01  4.78571135e-01  3.95774101e-01][-1.73673948e-01 -5.92373012e-01  4.21733708e-01  1.32509732e-01][ 5.53333275e-01  5.58610819e-01  5.35408562e-01  5.27406285e-01][-1.14301691e+00 -1.51316008e+00 -2.60315415e-01 -2.62386821e-01][ 9.16836886e-01 -3.62176246e-01  4.78571135e-01  1.32509732e-01][-7.79513300e-01 -8.22569778e-01  8.07091462e-02  2.64141916e-01][-1.02184904e+00 -2.43394714e+00 -1.46640561e-01 -2.62386821e-01][ 6.86617933e-02 -1.31979479e-01  2.51221427e-01  3.95774101e-01][ 1.89829664e-01 -1.97355361e+00  1.37546573e-01 -2.62386821e-01][ 3.10997534e-01 -3.62176246e-01  5.35408562e-01  2.64141916e-01][-2.94841818e-01 -3.62176246e-01 -8.98031345e-02  1.32509732e-01][ 1.03800476e+00  9.82172869e-02  3.64896281e-01  2.64141916e-01][-2.94841818e-01 -1.31979479e-01  4.21733708e-01  3.95774101e-01][-5.25060772e-02 -8.22569778e-01  1.94384000e-01 -2.62386821e-01][ 4.32165405e-01 -1.97355361e+00  4.21733708e-01  3.95774101e-01][-2.94841818e-01 -1.28296331e+00  8.07091462e-02 -1.30754636e-01][ 6.86617933e-02  3.28414053e-01  5.92245988e-01  7.90670654e-01][ 3.10997534e-01 -5.92373012e-01  1.37546573e-01  1.32509732e-01][ 5.53333275e-01 -1.28296331e+00  6.49083415e-01  3.95774101e-01][ 3.10997534e-01 -5.92373012e-01  5.35408562e-01  8.77547895e-04][ 6.74501145e-01 -3.62176246e-01  3.08058854e-01  1.32509732e-01][ 9.16836886e-01 -1.31979479e-01  3.64896281e-01  2.64141916e-01][ 1.15917263e+00 -5.92373012e-01  5.92245988e-01  2.64141916e-01][ 1.03800476e+00 -1.31979479e-01  7.05920842e-01  6.59038469e-01][ 1.89829664e-01 -3.62176246e-01  4.21733708e-01  3.95774101e-01][-1.73673948e-01 -1.05276654e+00 -1.46640561e-01 -2.62386821e-01][-4.16009689e-01 -1.51316008e+00  2.38717193e-02 -1.30754636e-01][-4.16009689e-01 -1.51316008e+00 -3.29657076e-02 -2.62386821e-01][-5.25060772e-02 -8.22569778e-01  8.07091462e-02  8.77547895e-04][ 1.89829664e-01 -8.22569778e-01  7.62758269e-01  5.27406285e-01][-5.37177559e-01 -1.31979479e-01  4.21733708e-01  3.95774101e-01][ 1.89829664e-01  7.88807586e-01  4.21733708e-01  5.27406285e-01][ 1.03800476e+00  9.82172869e-02  5.35408562e-01  3.95774101e-01][ 5.53333275e-01 -1.74335684e+00  3.64896281e-01  1.32509732e-01][-2.94841818e-01 -1.31979479e-01  1.94384000e-01  1.32509732e-01][-4.16009689e-01 -1.28296331e+00  1.37546573e-01  1.32509732e-01][-4.16009689e-01 -1.05276654e+00  3.64896281e-01  8.77547895e-04][ 3.10997534e-01 -1.31979479e-01  4.78571135e-01  2.64141916e-01][-5.25060772e-02 -1.05276654e+00  1.37546573e-01  8.77547895e-04][-1.02184904e+00 -1.74335684e+00 -2.60315415e-01 -2.62386821e-01][-2.94841818e-01 -8.22569778e-01  2.51221427e-01  1.32509732e-01][-1.73673948e-01 -1.31979479e-01  2.51221427e-01  8.77547895e-04][-1.73673948e-01 -3.62176246e-01  2.51221427e-01  1.32509732e-01][ 4.32165405e-01 -3.62176246e-01  3.08058854e-01  1.32509732e-01][-9.00681170e-01 -1.28296331e+00 -4.30827696e-01 -1.30754636e-01][-1.73673948e-01 -5.92373012e-01  1.94384000e-01  1.32509732e-01][ 5.53333275e-01  5.58610819e-01  1.27429511e+00  1.71209594e+00][-5.25060772e-02 -8.22569778e-01  7.62758269e-01  9.22302838e-01][ 1.52267624e+00 -1.31979479e-01  1.21745768e+00  1.18556721e+00][ 5.53333275e-01 -3.62176246e-01  1.04694540e+00  7.90670654e-01][ 7.95669016e-01 -1.31979479e-01  1.16062026e+00  1.31719939e+00][ 2.12851559e+00 -1.31979479e-01  1.61531967e+00  1.18556721e+00][-1.14301691e+00 -1.28296331e+00  4.21733708e-01  6.59038469e-01][ 1.76501198e+00 -3.62176246e-01  1.44480739e+00  7.90670654e-01][ 1.03800476e+00 -1.28296331e+00  1.16062026e+00  7.90670654e-01][ 1.64384411e+00  1.24920112e+00  1.33113254e+00  1.71209594e+00][ 7.95669016e-01  3.28414053e-01  7.62758269e-01  1.05393502e+00][ 6.74501145e-01 -8.22569778e-01  8.76433123e-01  9.22302838e-01][ 1.15917263e+00 -1.31979479e-01  9.90107977e-01  1.18556721e+00][-1.73673948e-01 -1.28296331e+00  7.05920842e-01  1.05393502e+00][-5.25060772e-02 -5.92373012e-01  7.62758269e-01  1.58046376e+00][ 6.74501145e-01  3.28414053e-01  8.76433123e-01  1.44883158e+00][ 7.95669016e-01 -1.31979479e-01  9.90107977e-01  7.90670654e-01][ 2.24968346e+00  1.70959465e+00  1.67215710e+00  1.31719939e+00][ 2.24968346e+00 -1.05276654e+00  1.78583195e+00  1.44883158e+00][ 1.89829664e-01 -1.97355361e+00  7.05920842e-01  3.95774101e-01][ 1.28034050e+00  3.28414053e-01  1.10378283e+00  1.44883158e+00][-2.94841818e-01 -5.92373012e-01  6.49083415e-01  1.05393502e+00][ 2.24968346e+00 -5.92373012e-01  1.67215710e+00  1.05393502e+00][ 5.53333275e-01 -8.22569778e-01  6.49083415e-01  7.90670654e-01][ 1.03800476e+00  5.58610819e-01  1.10378283e+00  1.18556721e+00][ 1.64384411e+00  3.28414053e-01  1.27429511e+00  7.90670654e-01][ 4.32165405e-01 -5.92373012e-01  5.92245988e-01  7.90670654e-01][ 3.10997534e-01 -1.31979479e-01  6.49083415e-01  7.90670654e-01][ 6.74501145e-01 -5.92373012e-01  1.04694540e+00  1.18556721e+00][ 1.64384411e+00 -1.31979479e-01  1.16062026e+00  5.27406285e-01][ 1.88617985e+00 -5.92373012e-01  1.33113254e+00  9.22302838e-01][ 2.49201920e+00  1.70959465e+00  1.50164482e+00  1.05393502e+00][ 6.74501145e-01 -5.92373012e-01  1.04694540e+00  1.31719939e+00][ 5.53333275e-01 -5.92373012e-01  7.62758269e-01  3.95774101e-01][ 3.10997534e-01 -1.05276654e+00  1.04694540e+00  2.64141916e-01][ 2.24968346e+00 -1.31979479e-01  1.33113254e+00  1.44883158e+00][ 5.53333275e-01  7.88807586e-01  1.04694540e+00  1.58046376e+00][ 6.74501145e-01  9.82172869e-02  9.90107977e-01  7.90670654e-01][ 1.89829664e-01 -1.31979479e-01  5.92245988e-01  7.90670654e-01][ 1.28034050e+00  9.82172869e-02  9.33270550e-01  1.18556721e+00][ 1.03800476e+00  9.82172869e-02  1.04694540e+00  1.58046376e+00][ 1.28034050e+00  9.82172869e-02  7.62758269e-01  1.44883158e+00][-5.25060772e-02 -8.22569778e-01  7.62758269e-01  9.22302838e-01][ 1.15917263e+00  3.28414053e-01  1.21745768e+00  1.44883158e+00][ 1.03800476e+00  5.58610819e-01  1.10378283e+00  1.71209594e+00][ 1.03800476e+00 -1.31979479e-01  8.19595696e-01  1.44883158e+00][ 5.53333275e-01 -1.28296331e+00  7.05920842e-01  9.22302838e-01][ 7.95669016e-01 -1.31979479e-01  8.19595696e-01  1.05393502e+00][ 4.32165405e-01  7.88807586e-01  9.33270550e-01  1.44883158e+00][ 6.86617933e-02 -1.31979479e-01  7.62758269e-01  7.90670654e-01]]

(2)离散化

        指把连续型变量转化为离散型变量的过程,可理解为连续值的一种映射。

ages = [31, 27, 11, 38, 15, 74, 44, 32, 54, 63, 41, 23]
bins = [15, 25, 45, 65, 100]
group_names = ["A", "B", "C", "D"]
① 等宽法

        按照变量的取值范围进行区间等长度划分,从而获得切分点和切分区间。

print(list(pd.cut(ages, bins, labels=group_names)))
→['B', 'B', nan, 'B', nan, 'D', 'B', 'B', 'C', 'C', 'B', 'A']
② 等频法

        按照分位数的概念对区间进行切分,已达到每个区间频数近似相等的效果。

print(list(pd.qcut(ages, 4)))
→[Interval(26.0, 35.0, closed='right'), Interval(26.0, 35.0, closed='right'), 
Interval(10.999, 26.0, closed='right'), Interval(35.0, 46.5, closed='right'), 
Interval(10.999, 26.0, closed='right'), Interval(46.5, 74.0, closed='right'), 
Interval(35.0, 46.5, closed='right'), Interval(26.0, 35.0, closed='right'), 
Interval(46.5, 74.0, closed='right'), Interval(46.5, 74.0, closed='right'), 
Interval(35.0, 46.5, closed='right'), Interval(10.999, 26.0, closed='right')]

(3)编码

        序号编码实际上是特征的映射,并且序号编码是对有先后顺序的变量值或者变量类别进行的编码。

df8 = pd.DataFrame({"gender": ["male", "female", "male", "male", "female"]})print(df8["gender"].replace(["male", "female"], [1.0, 0.0]))
→0    1.01    0.02    1.03    1.04    0.0Name: gender, dtype: float64print(df8["gender"].map({"male": 1.0, "female": 0.0}))
→0    1.01    0.0 2    1.03    1.04    0.0Name: gender, dtype: float64

(4)数据规约

        数据规约产生更小且保持完整性的新数据集,在规约后的数据集上进行分析和挖掘将提高效率。

① 属性规约

        属性规约通过属性合并创建新属性维数,或者通过直接删除不相关的属性来减少数据维数,从而提高数据挖掘的效率,降低计算成本。

属性规约常用方法
属性规约方法方法描述
合并属性将一些旧属性合并为新属性
逐步向前选择从一个空属性集开始,每次从原来属性集合中选择一个当前最优的属性添加到当前属性子集中,直到无法选出最优属性或满足一定阈值约束为止
逐步向后删除从全属性集开始,每次从当前属性子集中选择一个当前最差属性并将其从当前属性子集中消去
决策树归纳利用决策树的归纳方法对初始数据进行分类归纳学习,获得一个初始决策树,所有没有出现在决策树上的属性均可认为是无关属性,因此可以将这些属性删除
主成分分析用较少的变量去解释原数据中的大部分变量,将许多相关性很高的变量转化成彼此相互独立或不相关变量
② 数值规约

        用替代的、较小的数据表示形式换原始数据。这些技术可以是参数或者非参数的。

对于参数方法而言,使用模型估计数据,使得一般只需要存放模型参数而不是实际数据(离群点需存放),如回归和对数-线性模型。

存放数值规约表示的非参数方法包括: 直方图、聚类、抽样和数据立方体聚类。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/824243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Word分节后,页码不连续、转PDF每节后多出空白页解决办法

1. 问题图例 废话少说&#xff0c;先上图&#xff1a; 2. 问题分析 问题分析&#xff1a;出现以上问题的原因可能有&#xff0c; 未链接到上一节页面布局中节的起始位置设置为[奇数页] 3. 解决问题 若为【1. 未链接到上一节】导致该问题出现&#xff0c;则我们需要选中页脚…

Chatgpt掘金之旅—有爱AI商业实战篇|品牌故事业务|(十六)

演示站点&#xff1a; https://ai.uaai.cn 对话模块 官方论坛&#xff1a; www.jingyuai.com 京娱AI 一、AI技术创业在品牌故事业务有哪些机会&#xff1f; 人工智能&#xff08;AI&#xff09;技术作为当今科技创新的前沿领域&#xff0c;为创业者提供了广阔的机会和挑战。随…

接口压力测试 jmeter--入门篇(一)

一 压力测试的目的 评估系统的能力识别系统的弱点&#xff1a;瓶颈/弱点检查系统的隐藏的问题检验系统的稳定性和可靠性 二 性能测试指标以及测算 【虚拟用户数】&#xff1a;线程用户【并发数】&#xff1a;指在某一时间&#xff0c;一定数量的虚拟用户同时对系统的某个功…

OpenMesh 网格平均曲率计算

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 根据 Laplace-Beltrami 算子与平均曲率法向的关系: 又根据余切 Laplace-Beltrami 算子的定义: 其中 Ai 为该点邻域面积,取 Voronoi cell 面积如下: 得到

PACNet CellNet(代码开源)|bulk数据作细胞分类,评估细胞命运性能的一大利器

文章目录 1.前言2.CellNet2.1CellNet简介2.2CellNet结果 3.PACNet3.1安装R包与加载R包3.2加载数据3.3开始训练和分类3.4可视化分类过程3.5可视化分类结果 4.细胞命运分类和免疫浸润比较 1.前言 今天冲浪看到一个细胞分类性能评估的R包——PACNet&#xff0c;它与转录组分析方法…

Prometheus + Grafana 搭建监控仪表盘

目标要求 1、需要展现的仪表盘&#xff1a; SpringBoot或JVM仪表盘 Centos物理机服务器&#xff08;实际为物理分割的虚拟服务器&#xff09;仪表盘 2、展现要求: 探索Prometheus Grafana搭建起来的展示效果&#xff0c;尽可能展示能展示的部分。 一、下载软件包 监控系统核心…

Spring Cloud Gateway集成聚合型Spring Boot API发布组件knife4j,增强Swagger

大家都知道&#xff0c;在前后端分离开发的时代&#xff0c;前后端接口对接是一项必不可少的工作。 可是&#xff0c;作为后端开发&#xff0c;怎么和前端更好的配合&#xff0c;才能让自己不心累、脑累&#xff0c;直接扔给前端一个后端开放api接口文档或者页面&#xff0c;让…

Unity之OpenXR+XR Interaction Toolkit快速监听手柄任意按键事件

前言 当我们开发一个VR时,有时希望监听一个手柄按键的点击事件,或者一个按钮的Value值等。但是每次有可能监听的按钮有不一样,有可能监听的值不一样,那么每次这么折腾,有点累了,难道就没有一个万能的方法,让我可以直接监听我想要的某个按钮的事件么? 答案是肯定的,今…

分类算法——朴素贝叶斯(四)

概率基础 1概率定义 概率定义为一件事情发生的可能性 扔出一个硬币&#xff0c;结果头像朝上 P(X)&#xff1a;取值在[0&#xff0c;1] 2女神是否喜欢计算案例 在讲这两个概率之前我们通过一个例子&#xff0c;来计算一些结果&#xff1a; 问题如下&#xff1a; 1、女神喜欢…

sql知识总结二

一.报错注入 1.什么是报错注入&#xff1f; 这是一种页面响应形式&#xff0c;响应过程如下&#xff1a; 用户在前台页面输入检索内容----->后台将前台输入的检索内容无加区别的拼接成sql语句&#xff0c;送给数据库执行------>数据库将执行的结果返回给后台&#xff…

2024第十五届蓝桥杯JavaB组省赛部分题目

目录 第三题 第四题 第五题 第六题 第七题 第八题 转载请声明出处&#xff0c;谢谢&#xff01; 填空题暂时可以移步另一篇文章&#xff1a;2024第十五届蓝桥杯 Java B组 填空题-CSDN博客 第三题 第四题 第五题 第六题 第七题 第八题 制作不易&#xff0c;还请点个赞支持…

数据结构-栈和队列刷题集(长期更新)

文章目录 万能计算器的实现以及源码分析1. leetcode 150 逆波兰表达式求值 万能计算器的实现以及源码分析 /*** 我们尝试写一个完整版的计算器,由于计算机不能很好的识别括号,所以一般要转换为逆波兰表达式求解* 思路解析 :* 1. 输入一个 中缀表达式* 2. 中缀表达式转化为list…

SpringBoot基于RabbitMQ实现消息可靠性

文章目录 1. ☃️概述2. ☃️生产者消息确认2.1 ❄️❄️概述2.2 ❄️❄️实战⛷️⛷️⛷️2.2.1 修改配置⛷️⛷️⛷️2.2.2 定义 Return 回调⛷️⛷️⛷️2.2.3 定义ConfirmCallback 3. ☃️消息持久化3.1 ❄️❄️交换机持久化3.2 ❄️❄️队列持久化3.3 ❄️❄️消息持久化…

进程、线程和协程

进程、线程和协程 进程是程序的执行实例 线程是进程的执行路径 协程是基于线程之上但又比线程更加轻量级的存在 进程与线程的区别 线程是程序执行的最小单位&#xff0c;而进程是操作系统分配资源的最小单位 进程和程序的区别 程序&#xff1a;执行特定任务的一串代码&a…

牛客Linux高并发服务器开发学习第二天

Gcc编译 利用gcc 生成应用时如果不加-o 和应用名&#xff0c;默认生成a.out 可以用./ a.out打开 Gcc工作流程 可执行程序Windows系统中为.exe Linux系统中为.out g也可以编辑c程序 gcc也可以编译cpp代码&#xff0c;只是在编译阶段gcc不能自动共和C程序使用的库进行联接&…

JS-43-Node.js02-安装Node.js和npm

Node.js是一个基于Chrome V8引擎的JavaScript运行时环境&#xff0c;可以让JavaScript实现后端开发&#xff0c;所以&#xff0c;首先在本机安装Node.js环境。 一、安装Node.js 官网&#xff1a;下载 Node.js 默认两个版本的下载&#xff1a; 64位windows系统的LTS(Long Tim…

CST电磁仿真物体表面的Sheet结构和生成3D Model【基础教程】

由Sheet结构生成3D Model 使用Shell Solid and Thicken Sheet&#xff01; Modeling > Tools > Shape Tools > Shell Solid or Thicken Sheet Shell Solidor ThickenSheet会根据不同类型的模型提供两种完全不同的功能。 如033.由3D Model生成Cavity 所述&#xff…

飞行机器人专栏(十四)-- Kinect DK 人体骨骼点运动提取方法

系列文章目录 Ubuntu 18.04/20.04 CV环境配置&#xff08;下&#xff09;--手势识别TRTposeKinect DK人体骨骼识别_ubuntu kinect骨骼测试-CSDN博客文章浏览阅读1.3k次。trt_pose_ros kinect实现手势识别和人体骨骼识别&#xff0c;用于机器人运动控制参考_ubuntu kinect骨骼测…

Postgresql源码(126)TupleStore使用场景与原理分析

相关 《Postgresql源码&#xff08;125&#xff09;游标恢复执行的原理分析》 《Postgresql游标使用介绍&#xff08;cursor&#xff09;》 总结 开源PG中使用tuple store来缓存tuple集&#xff0c;默认使用work_mem空间存放&#xff0c;超过可以落盘。在PL的returns setof场景…

Pascal VOC(VOC 2012、VOC 2007) 数据集的简介

一、数据集介绍 PascalVOC(2005~2012)数据集是PASCAL VOC挑战官方使用的数据集。该数据集包含20类的物体。每张图片都有标注&#xff0c;标注的物体包括人、动物&#xff08;如猫、狗、岛等&#xff09;、交通工具&#xff08;如车、船飞机等&#xff09;、家具&#xff08;如椅…