Python 如何使用np.arange将级数除以级数类型
我想做的是我上传的png插图,主要有两列,其中有数字。带星号的代码告诉我类和“平方英里”。百分比列更难获取。我将序列号数组除以该列的总序列,但没有成功。这个部门如何才能完成Python 如何使用np.arange将级数除以级数类型,python,pandas,Python,Pandas,我想做的是我上传的png插图,主要有两列,其中有数字。带星号的代码告诉我类和“平方英里”。百分比列更难获取。我将序列号数组除以该列的总序列,但没有成功。这个部门如何才能完成 Total = ca_land.get("SquareMiles") Total1 = Total.sum() percent = np.arange(Total/Total1) * ca_classess = ca_land.groupby('Class').sum() ca_classes = ca_classes
Total = ca_land.get("SquareMiles")
Total1 = Total.sum()
percent = np.arange(Total/Total1)
* ca_classess = ca_land.groupby('Class').sum()
ca_classes = ca_classess.assign(
Percentage = percent
)
样本数据:
{'Class': {52: 'Forest & Woodland', 126: 'Forest & Woodland', 128: 'Forest & Woodland', 131: 'Forest & Woodland', 133: 'Forest & Woodland'}, 'EcologicalSystem': {52: 'East Gulf Coastal Plain Near-Coast Pine Flatwoods - Open Understory Modifier', 126: 'California Central Valley Mixed Oak Savanna', 128: 'California Coastal Closed-Cone Conifer Forest and Woodland', 131: 'California Coastal Live Oak Woodland and Savanna', 133: 'California Lower Montane Blue Oak-Foothill Pine Woodland and Savanna'}, 'SquareMiles': {52: 0.03266424261286, 126: 4350.262402786333, 128:
85.94309723386156, 131: 1726.1481557315549, 133: 6587.099312156705}}
我认为在聚合
总和之后,有必要对平方英里
列进行划分:
d = {'Class': {52: 'Forest & Woodland1', 126: 'Forest & Woodland1', 128: 'Forest & Woodland1', 131: 'Forest & Woodland', 133: 'Forest & Woodland'}, 'EcologicalSystem': {52: 'East Gulf Coastal Plain Near-Coast Pine Flatwoods - Open Understory Modifier', 126: 'California Central Valley Mixed Oak Savanna', 128: 'California Coastal Closed-Cone Conifer Forest and Woodland', 131: 'California Coastal Live Oak Woodland and Savanna', 133: 'California Lower Montane Blue Oak-Foothill Pine Woodland and Savanna'}, 'SquareMiles': {52: 0.03266424261286, 126: 4350.262402786333, 128: 85.94309723386156, 131: 1726.1481557315549, 133: 6587.099312156705}}
ca_land = pd.DataFrame(d)
或不带赋值的解决方案更易于阅读:
ca_classes = ca_land.groupby('Class').sum()
ca_classes['Percentage'] = ca_classes['SquareMiles'] / ca_land['SquareMiles'].sum()
print (ca_classes)
SquareMiles Percentage
Class
Forest & Woodland 8313.247468 0.652046
Forest & Woodland1 4436.238164 0.347954
你能提供样本数据吗?你能分享一个吗?变量名和函数名应在带有下划线的小写字母后面
style.df.head()。to_dict()AttributeError:“DataFrame”对象没有属性“head”。该错误消息非常奇怪。您究竟是如何创建df的?type(df)
的输出是什么?修复了错误消息
ca_classes = ca_land.groupby('Class').sum()
ca_classes['Percentage'] = ca_classes['SquareMiles'] / ca_land['SquareMiles'].sum()
print (ca_classes)
SquareMiles Percentage
Class
Forest & Woodland 8313.247468 0.652046
Forest & Woodland1 4436.238164 0.347954