Python 使用字典中的数据
我想在方程式中使用字典中的两列来创建一个新列。我知道我可以创建np.array,但我更想看看我是否可以不这样做 我在玩状态数据只是为了练习。以下是我目前的代码:Python 使用字典中的数据,python,python-3.x,pandas,Python,Python 3.x,Pandas,我想在方程式中使用字典中的两列来创建一个新列。我知道我可以创建np.array,但我更想看看我是否可以不这样做 我在玩状态数据只是为了练习。以下是我目前的代码: state_data = { "name":['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'DC', 'Florida', 'Georgia', 'Hawaii', 'Idaho'
state_data = {
"name":['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'DC', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', 'Ohio', 'Oklahmoa', 'Oregon', 'Pennslyvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'],
"pop millions": [4.8, 0.7, 7.0, 3.0, 39.5, 5.6, 3.6, 1.0, 0.7, 21.0, 10.4, 1.4, 1.7, 12.8, 6.7, 3.1, 2.9, 4.4, 4.6, 1.3, 6.1, 6.9, 9.9, 5.6, 3.0, 6.1, 1.1, 1.9, 3.0, 1.3, 9.0, 2.1, 19.8, 10.2, 0.7, 11.6, 3.9, 4.1, 12.8, 1.1, 5.0,0.9, 6.7, 28.3, 3.1, 0.6, 8.5, 7.4, 1.8, 5.8, 0.6],
"% White":[66, 61, 55, 72, 37, 68, 67, 62, 37, 54, 53, 22, 82, 61, 80, 86, 76, 85, 59, 93, 51, 72, 75, 80, 57, 79, 86, 79, 49, 90, 55, 37, 55, 63, 84, 79, 66, 76, 76, 72, 64, 82, 74, 42, 78, 93, 62, 69, 92, 81, 84],
'2016 Clinton Vote Share':[35, 38, 45, 34, 62, 47, 55, 53, 93, 48, 46, 62, 28, 55, 38, 42, 36, 32, 38, 48, 61, 61, 47, 47, 40, 38, 36, 34, 48, 48, 55, 48, 59, 47, 28, 44, 29, 52, 48, 55, 41, 32, 35, 43, 28, 62, 50, 54, 27, 47, 23],
'Homicide Rate per 100k':[8.3, 8.4, 5.9, 8.6, 4.6, 3.9, 2.8, 5.6, 23, 5, 6.7, 2.7, 1.9, 7.8, 6, 3.3, 5.5, 5.9, 12.4, 1.7, 9, 2.5, 5.7, 2, 8.2, 9.8, 3.9, 2.2, 9.1, 1, 3.6, 7.1, 2.8, 5.8, 1.3, 6.1, 6.2, 2.5, 5.8, 1.9, 7.8, 2.9, 7.8, 5, 2.4, 2.2, 5.3, 3.1, 4.7, 3.2, 2.6],
'Police Shootings 2019':[104, 39, 253, 82, 798, 195, 21, 13, 13, 350, 182, 30, 42, 103, 95, 32, 49, 95, 109, 22, 79, 35, 78, 61, 65, 139, 31, 24, 96, 13, 68, 106, 101, 156, 11, 155, 164, 88, 108, 4, 88, 17, 139, 480, 60, 9, 95, 152, 54, 91, 14]
}
table = pd.DataFrame(state_data)
print(table)
……我想添加一个新的专栏“警察枪击案”即“警察枪击案2019”除以“百万人”。你可以简单地将一个专栏分成另一个专栏 您可以在
数据框中定义一个新列,如表['new\u column\u name']=something
您将您的内容指定为2019年警察枪击案/百万人枪击案,因此将其设置为该值
为什么不表格['police\u shootings\u peru million']=表格['police shootings 2019']/表格['pop millions']
收益率:
name ... police_shootings_per_million
0 Alabama ... 21.666667
1 Alaska ... 55.714286
2 Arizona ... 36.142857
3 Arkansas ... 27.333333
4 California ... 20.202532
只要这样做:
table['police_shootings_per_million'] = table['Police Shootings 2019']/table['pop millions']
print(table)
name pop millions % White 2016 Clinton Vote Share Homicide Rate per 100k Police Shootings 2019 police_shootings_per_million
0 Alabama 4.8 66 35 8.3 104 21.666667
1 Alaska 0.7 61 38 8.4 39 55.714286
2 Arizona 7.0 55 45 5.9 253 36.142857
3 Arkansas 3.0 72 34 8.6 82 27.333333
4 California 39.5 37 62 4.6 798 20.202532
5 Colorado 5.6 68 47 3.9 195 34.821429
6 Connecticut 3.6 67 55 2.8 21 5.833333
7 Delaware 1.0 62 53 5.6 13 13.000000
8 DC 0.7 37 93 23.0 13 18.571429
9 Florida 21.0 54 48 5.0 350 16.666667
10 Georgia 10.4 53 46 6.7 182 17.500000
11 Hawaii 1.4 22 62 2.7 30 21.428571
12 Idaho 1.7 82 28 1.9 42 24.705882
13 Illinois 12.8 61 55 7.8 103 8.046875
14 Indiana 6.7 80 38 6.0 95 14.179104
15 Iowa 3.1 86 42 3.3 32 10.322581
16 Kansas 2.9 76 36 5.5 49 16.896552
17 Kentucky 4.4 85 32 5.9 95 21.590909
18 Louisiana 4.6 59 38 12.4 109 23.695652
19 Maine 1.3 93 48 1.7 22 16.923077
20 Maryland 6.1 51 61 9.0 79 12.950820
21 Massachusetts 6.9 72 61 2.5 35 5.072464
22 Michigan 9.9 75 47 5.7 78 7.878788
23 Minnesota 5.6 80 47 2.0 61 10.892857
24 Mississippi 3.0 57 40 8.2 65 21.666667
25 Missouri 6.1 79 38 9.8 139 22.786885
26 Montana 1.1 86 36 3.9 31 28.181818
27 Nebraska 1.9 79 34 2.2 24 12.631579
28 Nevada 3.0 49 48 9.1 96 32.000000
29 New Hampshire 1.3 90 48 1.0 13 10.000000
30 New Jersey 9.0 55 55 3.6 68 7.555556
31 New Mexico 2.1 37 48 7.1 106 50.476190
32 New York 19.8 55 59 2.8 101 5.101010
33 North Carolina 10.2 63 47 5.8 156 15.294118
34 North Dakota 0.7 84 28 1.3 11 15.714286
35 Ohio 11.6 79 44 6.1 155 13.362069
36 Oklahmoa 3.9 66 29 6.2 164 42.051282
37 Oregon 4.1 76 52 2.5 88 21.463415
38 Pennslyvania 12.8 76 48 5.8 108 8.437500
39 Rhode Island 1.1 72 55 1.9 4 3.636364
40 South Carolina 5.0 64 41 7.8 88 17.600000
41 South Dakota 0.9 82 32 2.9 17 18.888889
42 Tennessee 6.7 74 35 7.8 139 20.746269
43 Texas 28.3 42 43 5.0 480 16.961131
44 Utah 3.1 78 28 2.4 60 19.354839
45 Vermont 0.6 93 62 2.2 9 15.000000
46 Virginia 8.5 62 50 5.3 95 11.176471
47 Washington 7.4 69 54 3.1 152 20.540541
48 West Virginia 1.8 92 27 4.7 54 30.000000
49 Wisconsin 5.8 81 47 3.2 91 15.689655
50 Wyoming 0.6 84 23 2.6 14 23.333333
太好了,非常感谢。我使用的是这个公式,但不是“表”,而是键入“state_data”没问题@NateGo,很高兴我们提供了帮助。如果这解决了您的问题,请确保标记为正确,以便其他人使用!