大数据分析与挖掘 练习题

Posted 劳埃德·福杰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据分析与挖掘 练习题相关的知识,希望对你有一定的参考价值。

第一题

下图是2020年全国分地区农村居民人均可支配收入来源数据,请机器学习模型进行排序和分类分析。

demo.py

import pandas as pd
import numpy as np
from sklearn.linear_model import SGDClassifier
from sklearn.model_selection import cross_val_score

data = pd.read_csv('./data/form.csv')  # 拿到csv文件中数据,根据数据生成一个Dataframe
# 原表格数据展示
print(data)
# 根据人均可支配收入这一栏进行降序排列
sorted_data = data.sort_values(by=['可支配收入'], ascending=False)
print("\\n根据可支配收入这一栏进行降序排列:")
print(sorted_data)  # 排完序后打印看看

# 分类规定
# 人均可支配收入   类别 数字化特征
# [20000,25000)  高     2
# [15000,20000)  中     1
# [10000,15000)  低     0
label = []  # 分类标签
# 拿到每个城市的分类标签,放在label数组中
for index, row in data.iterrows():
    income = row['可支配收入']
    if 20000 <= income < 25000:
        label.append(2)
    elif 15000 <= income < 20000:
        label.append(1)
    else:
        label.append(0)

x = data['可支配收入'].values.reshape(-1, 1)  # 将数据转换成n行1列
y = np.array(label)
# 用SGDClassifier分类器进行分类
sgd_clf = SGDClassifier(max_iter=1000, random_state=42)
sgd_clf.fit(x, label)
# 交叉验证查看模型精度
print("\\n交叉验证查看模型精度:",end="")
print(cross_val_score(sgd_clf, x, label, cv=3, scoring="accuracy"))
# 测试模型,看看人均可支配收入为12000的时候,归到什么类别
print("\\n均可支配收入为12000的时候,归到什么类别:",end="")
print(sgd_clf.predict([[12000]]))

./data/form.csv

地区,可支配收入,工资性收入,经营净收入,财产净收入,转移净收入
全国,17131.5,6973.9,6077.4,418.8,3661.3
北京,30125.7,21173.8,1612.6,3103.3,4235.9
天津,25690.6,14384.5,5684,1450.9,4286.7
河北,16467.0,8598.4,55172,351.6,1999.8
山西,13878.0,6347.2,3613.6,204.8,3712.4
内蒙古,16566.9,3352.9,8827.7,498.2,3888.1
辽宁,17450.3,6511.3,7074.7,296.9,2767.5
吉林,16067.0,4018.8,914.1,364.5,2542.6
黑龙江,16168.4,3152.2,8452.5,847.7,3716.1
上海,34911.3,21067.2,1944.0,1206.9,10693.2
江苏,24198.5,11789.0,6444.5 ,895.1,5069.8
浙江,31930.5,19509.7,7600.6,949.2,3871.0
安徽,16620.2,5838.6,6222.6,334.3,4224.7
福建,20880.3,9411.0,7509.8,392.9,3566.6
江西,16980.8,7301.2,5866.0,279.1,3534.6
山东,18753.2,7590.9,8094.8,485.2,2582.3
河南,16107.9,6153.4,6174.9,237.7,4541.9
湖北,16305.9,5271.6,6745.4,214.4,4074.5
湖南,16584.6,6569.6,5804.0,231.7,3979.3
广东,20143.4,10613.5,4584.9,616.1,4328.9
广西,14814.9,4638.2,5867.7,352.2,3956.8
海南,16278.8,5752.8,6124.4,306.8,3094.9
重庆,16361.4,5740.5,5665.7,406.1,4649.1
四川,15929.1,4977.8,6152.0,510.2,4289.1
贵州,11642.3,4822.4,3444.6,388.5,3186.9
云南,12841.9,3975.0,6522.6,197.6,2146.8
西藏,14298.4,4778.3,6912.1,609.9,2298.1
陕西,13316.5,5387.8,4150.0,228.6,3550.0
甘肃,10344.3,2965.9,4650.5,135.3,2572.6
青海,12342.5,4005.7,4084.9,414.2,3037.7
宁夏,13689.4,5150.0,5549.4,393.5,2796.5
新疆,14056.1,4024.0,6371.7,299.5,3360.9

输出:

     地区    可支配收入    工资性收入    经营净收入   财产净收入    转移净收入
0    全国  17131.5   6973.9   6077.4   418.8   3661.3
1    北京  30125.7  21173.8   1612.6  3103.3   4235.9
2    天津  25690.6  14384.5   5684.0  1450.9   4286.7
3    河北  16467.0   8598.4  55172.0   351.6   1999.8
4    山西  13878.0   6347.2   3613.6   204.8   3712.4
5   内蒙古  16566.9   3352.9   8827.7   498.2   3888.1
6    辽宁  17450.3   6511.3   7074.7   296.9   2767.5
7    吉林  16067.0   4018.8    914.1   364.5   2542.6
8   黑龙江  16168.4   3152.2   8452.5   847.7   3716.1
9    上海  34911.3  21067.2   1944.0  1206.9  10693.2
10   江苏  24198.5  11789.0   6444.5   895.1   5069.8
11   浙江  31930.5  19509.7   7600.6   949.2   3871.0
12   安徽  16620.2   5838.6   6222.6   334.3   4224.7
13   福建  20880.3   9411.0   7509.8   392.9   3566.6
14   江西  16980.8   7301.2   5866.0   279.1   3534.6
15   山东  18753.2   7590.9   8094.8   485.2   2582.3
16   河南  16107.9   6153.4   6174.9   237.7   4541.9
17   湖北  16305.9   5271.6   6745.4   214.4   4074.5
18   湖南  16584.6   6569.6   5804.0   231.7   3979.3
19   广东  20143.4  10613.5   4584.9   616.1   4328.9
20   广西  14814.9   4638.2   5867.7   352.2   3956.8
21   海南  16278.8   5752.8   6124.4   306.8   3094.9
22   重庆  16361.4   5740.5   5665.7   406.1   4649.1
23   四川  15929.1   4977.8   6152.0   510.2   4289.1
24   贵州  11642.3   4822.4   3444.6   388.5   3186.9
25   云南  12841.9   3975.0   6522.6   197.6   2146.8
26   西藏  14298.4   4778.3   6912.1   609.9   2298.1
27   陕西  13316.5   5387.8   4150.0   228.6   3550.0
28   甘肃  10344.3   2965.9   4650.5   135.3   2572.6
29   青海  12342.5   4005.7   4084.9   414.2   3037.7
30   宁夏  13689.4   5150.0   5549.4   393.5   2796.5
31   新疆  14056.1   4024.0   6371.7   299.5   3360.9

根据可支配收入这一栏进行降序排列:
     地区    可支配收入    工资性收入    经营净收入   财产净收入    转移净收入
9    上海  34911.3  21067.2   1944.0  1206.9  10693.2
11   浙江  31930.5  19509.7   7600.6   949.2   3871.0
1    北京  30125.7  21173.8   1612.6  3103.3   4235.9
2    天津  25690.6  14384.5   5684.0  1450.9   4286.7
10   江苏  24198.5  11789.0   6444.5   895.1   5069.8
13   福建  20880.3   9411.0   7509.8   392.9   3566.6
19   广东  20143.4  10613.5   4584.9   616.1   4328.9
15   山东  18753.2   7590.9   8094.8   485.2   2582.3
6    辽宁  17450.3   6511.3   7074.7   296.9   2767.5
0    全国  17131.5   6973.9   6077.4   418.8   3661.3
14   江西  16980.8   7301.2   5866.0   279.1   3534.6
12   安徽  16620.2   5838.6   6222.6   334.3   4224.7
18   湖南  16584.6   6569.6   5804.0   231.7   3979.3
5   内蒙古  16566.9   3352.9   8827.7   498.2   3888.1
3    河北  16467.0   8598.4  55172.0   351.6   1999.8
22   重庆  16361.4   5740.5   5665.7   406.1   4649.1
17   湖北  16305.9   5271.6   6745.4   214.4   4074.5
21   海南  16278.8   5752.8   6124.4   306.8   3094.9
8   黑龙江  16168.4   3152.2   8452.5   847.7   3716.1
16   河南  16107.9   6153.4   6174.9   237.7   4541.9
7    吉林  16067.0   4018.8    914.1   364.5   2542.6
23   四川  15929.1   4977.8   6152.0   510.2   4289.1
20   广西  14814.9   4638.2   5867.7   352.2   3956.8
26   西藏  14298.4   4778.3   6912.1   609.9   2298.1
31   新疆  14056.1   4024.0   6371.7   299.5   3360.9
4    山西  13878.0   6347.2   3613.6   204.8   3712.4
30   宁夏  13689.4   5150.0   5549.4   393.5   2796.5
27   陕西  13316.5   5387.8   4150.0   228.6   3550.0
25   云南  12841.9   3975.0   6522.6   197.6   2146.8
29   青海  12342.5   4005.7   4084.9   414.2   3037.7
24   贵州  11642.3   4822.4   3444.6   388.5   3186.9
28   甘肃  10344.3   2965.9   4650.5   135.3   2572.6

交叉验证查看模型精度:[0.45454545 0.45454545 0.4       ]

均可支配收入为12000的时候,归到什么类别:[0]

第二题

下图是2020年全国分地区农村居民人均可支配收入数据,请深度学习模型进行预测分析。

 

demo2.py

import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression

data_pd = pd.read_csv('./data/form2.csv', sep=',')   # 拿到csv文件中数据,根据数据生成一个Dataframe
# 把原数据打印看看
print("原数据:")
print(data_pd)

train_data = []  # 训练数据
label = []  # 标签
# 每行的最后一列为标签,前面几行为训练数据
for row in data_pd.index:
    data_row = data_pd.iloc[row].values
    label.append(data_row[-1:])
    train_data.append(data_row[1:-1])

# 将train_data、label的数据类型转成ndarry
train_data = np.array(train_data)
label = np.array(label)

# 训练一个线性回归模型
lin_reg = LinearRegression()
lin_reg.fit(train_data, label)

# 测试模型,预测下一年全国和各地区的人均可支配收入
income_predictions = lin_reg.predict(train_data)
print("预测结果: ")
print(income_predictions)

 ./data/form2.csv

地名,2014,2015,2016,2017,2018,2019,2020
全国,10488.9,11421.7,12363.4,13432.4,14617.0,16020.7,17131.5
北京,18667.3,20568.7,22309.5,24240.5,26490.3,23928.4,30125.7
天津,17014.2,18481.6,20075.6,21753.7,23065.2,24804.1,25590.6
河北,10186.1,11050.5,11919.4,12860.9,14030.9,15373.1,16467.0
山西,8609.4,9453.9,10082.5,10767.5,11750.0,12902.4,13878.0
内蒙古,9976.3,10775.9,11609.0,12584.3,13802.6,15282.8,16566.9
辽宁,11191.5,12056.9,12880.7,13746.8,14656.3,16108.3,17450.3
吉林,10780.1,11326.2,12122.9,12950.4,13748.2,14936.0,16067.0
黑龙江,10453.2,1095.2,11831.3,12664.8,13803.7,14962.1,16168.4
上海,21191.6,23205.2,25520.4,27825.0,30374.7,33195.2,34911.3
江苏,14958.4,15266.7,17605.6,19158.0,20845.1,22675.4,24198.5
浙江,19373.3,21125.0,22866.1,24955.8,27302.4,29875.8,31930.5
安微,9916.4,10320.7,11720.5,12758.2,13996.0,15416.7,16620.2
福建,12650.2,13792.7,14999.2,16334.8,17821.2,13560.4,20380.3
山西,10116.6,11139.1,12137.7,13241.8,14459.9,15796.3,16980.8
山东,11682.3,12930.4,13954.1,15117.5,16297.0,17775.5,18753.2
河南,9966.1,10352.9,11696.7,12719.2,13830.7,15163.7,16107.9
湖北,10849.1,11843.9,12725.0,13812.1,14377.8,16390.9,16306.9
湖南,10060.2,10992.5,11930.4,12935.8,14092.5,15394.8,16584.6
广东,12245.8,13360.4,14512.2,15779.7,17167.7,18813.4,20143.4
广西,8683.2,9466.6,10359.5,11325.5,12434.3,13676.7,14314.9
海南,9912.6,10357.6,11842.9,12901.8,13988.9,15113.1,16278.8
重庆,9489.8,10504.7,11548.8,12637.9,13731.2,15133.3,16361.4
四川,9347.7,10247.4,11203.1,12225.9,13331.4,14670.1,15929.1
贵州,6671.2,7386.9,8090.3,8869.1,9716.1,10756.3,11642.3
云南,7456.1,8242.1,9019.8,9862.2,10767.9,11902.4,12841.9
西藏,7359.2,8243.7,9093.8,10330.2,11449.8,12951.0,14598.4
陕西,7932.2,8688.9,9396.4,10264.5,11212.8,12325.7,13316.5
甘肃,6276.6,6936.2,7456.9,8076.1,8804.1,9628.9,10344.3
青海,7282.7,7933.4,8664.4,9462.3,10393.3,11499.4,12342.5
宁夏,8410.0,91187,9851.6,10737.9,11707.6,12858.4,13389.4
新疆,8723.8,9425.1,10183.2,11045.3,11974.5,13121.7,14056.1

 输出

原数据:
     地名     2014     2015     2016     2017     2018     2019     2020
0    全国  10488.9  11421.7  12363.4  13432.4  14617.0  16020.7  17131.5
1    北京  18667.3  20568.7  22309.5  24240.5  26490.3  23928.4  30125.7
2    天津  17014.2  18481.6  20075.6  21753.7  23065.2  24804.1  25590.6
3    河北  10186.1  11050.5  11919.4  12860.9  14030.9  15373.1  16467.0
4    山西   8609.4   9453.9  10082.5  10767.5  11750.0  12902.4  13878.0
5   内蒙古   9976.3  10775.9  11609.0  12584.3  13802.6  15282.8  16566.9
6    辽宁  11191.5  12056.9  12880.7  13746.8  14656.3  16108.3  17450.3
7    吉林  10780.1  11326.2  12122.9  12950.4  13748.2  14936.0  16067.0
8   黑龙江  10453.2   1095.2  11831.3  12664.8  13803.7  14962.1  16168.4
9    上海  21191.6  23205.2  25520.4  27825.0  30374.7  33195.2  34911.3
10   江苏  14958.4  15266.7  17605.6  19158.0  20845.1  22675.4  24198.5
11   浙江  19373.3  21125.0  22866.1  24955.8  27302.4  29875.8  31930.5
12   安微   9916.4  10320.7  11720.5  12758.2  13996.0  15416.7  16620.2
13   福建  12650.2  13792.7  14999.2  16334.8  17821.2  13560.4  20380.3
14   山西  10116.6  11139.1  12137.7  13241.8  14459.9  15796.3  16980.8
15   山东  11682.3  12930.4  13954.1  15117.5  16297.0  17775.5  18753.2
16   河南   9966.1  10352.9  11696.7  12719.2  13830.7  15163.7  16107.9
17   湖北  10849.1  11843.9  12725.0  13812.1  14377.8  16390.9  16306.9
18   湖南  10060.2  10992.5  11930.4  12935.8  14092.5  15394.8  16584.6
19   广东  12245.8  13360.4  14512.2  15779.7  17167.7  18813.4  20143.4
20   广西   8683.2   9466.6  10359.5  11325.5  12434.3  13676.7  14314.9
21   海南   9912.6  10357.6  11842.9  12901.8  13988.9  15113.1  16278.8
22   重庆   9489.8  10504.7  11548.8  12637.9  13731.2  15133.3  16361.4
23   四川   9347.7  10247.4  11203.1  12225.9  13331.4  14670.1  15929.1
24   贵州   6671.2   7386.9   8090.3   8869.1   9716.1  10756.3  11642.3
25   云南   7456.1   8242.1   9019.8   9862.2  10767.9  11902.4  12841.9
26   西藏   7359.2   8243.7   9093.8  10330.2  11449.8  12951.0  14598.4
27   陕西   7932.2   8688.9   9396.4  10264.5  11212.8  12325.7  13316.5
28   甘肃   6276.6   6936.2   7456.9   8076.1   8804.1   9628.9  10344.3
29   青海   7282.7   7933.4   8664.4   9462.3  10393.3  11499.4  12342.5
30   宁夏   8410.0  91187.0   9851.6  10737.9  11707.6  12858.4  13389.4
31   新疆   8723.8   9425.1  10183.2  11045.3  11974.5  13121.7  14056.1
预测结果: 
[[17186.10368046]
 [30105.73649876]
 [25980.56771292]
 [16491.78826325]
 [13760.89994907]
 [16446.01152777]
 [16769.98242851]
 [15888.82865998]
 [16389.1064388 ]
 [34922.47910975]
 [24285.53961   ]
 [31835.23731015]
 [16625.18815539]
 [20327.15478864]
 [16999.0335761 ]
 [18745.48169532]
 [16335.18698866]
 [16305.83936643]
 [16523.82039608]
 [20039.76152466]
 [14853.69007152]
 [16354.92180707]
 [16067.14487963]
 [15723.89363459]
 [11681.76211999]
 [12816.29785057]
 [14209.8050068 ]
 [13426.56944116]
 [10546.46005521]
 [12531.46434096]
 [13419.93064214]
 [14182.91246965]]

以上是关于大数据分析与挖掘 练习题的主要内容,如果未能解决你的问题,请参考以下文章

如何利用好大数据挖掘潜在用户?

资料分析难题二

推荐:网络爬虫与文本挖掘核心技术案例实战高级研修班

山东省111个城投平台详尽数据挖掘

干货练习题︱基于今日头条开源数据的文本挖掘

机器学习练习-机器学习的四大应用领域