python采用数据相关性计算方法,对glass.csv数据集的不同属性之间的相关性进行计算。对于相关性超过阈值的属性,采用数据预处理技术对重复记录进行处理。
时间: 2023-06-20 17:07:36 浏览: 128
好的,这个任务可以分为以下几个步骤:
1. 导入需要的库和数据集
```python
import pandas as pd
import numpy as np
# 导入glass.csv数据集
data = pd.read_csv("glass.csv")
```
2. 计算不同属性之间的相关性
```python
corr_matrix = data.corr()
```
这里使用`corr()`方法来计算相关性矩阵,得到一个$n\times n$的矩阵,其中$n$为数据集中属性的个数。
3. 设定相关性的阈值,找出相关性超过阈值的属性
```python
threshold = 0.8
corr_list = []
for i in range(len(corr_matrix)):
for j in range(i):
if abs(corr_matrix.iloc[i, j]) > threshold:
corr_list.append((corr_matrix.columns[i], corr_matrix.columns[j], corr_matrix.iloc[i, j]))
```
这里设定阈值为0.8,遍历相关性矩阵,找出绝对值大于0.8的相关性,将其存储在`corr_list`中,每个元素是一个元组,表示两个相关的属性和它们之间的相关系数。
4. 对重复记录进行处理
使用数据预处理技术来处理重复记录,这里可以使用`drop_duplicates()`方法来删除重复记录,该方法会保留第一个出现的记录,将其余的记录删除。
```python
data.drop_duplicates(inplace=True)
```
这里使用了`inplace=True`来直接修改原始数据集。
完整代码如下:
```python
import pandas as pd
import numpy as np
# 导入glass.csv数据集
data = pd.read_csv("glass.csv")
# 计算不同属性之间的相关性
corr_matrix = data.corr()
# 设定相关性的阈值,找出相关性超过阈值的属性
threshold = 0.8
corr_list = []
for i in range(len(corr_matrix)):
for j in range(i):
if abs(corr_matrix.iloc[i, j]) > threshold:
corr_list.append((corr_matrix.columns[i], corr_matrix.columns[j], corr_matrix.iloc[i, j]))
# 对重复记录进行处理
data.drop_duplicates(inplace=True)
```
阅读全文