因此,一周前我开始使用Graphlab进行机器学习课程。我仍然是Graphlab的新手,我通过API阅读但无法获得我想要的解决方案。所以,这是问题所在。我有这些数据有多个列,例如卧室,浴室,平方英尺,邮政编码等。这些基本上是功能,我的目标是使用各种ML算法来预测房子的价格。现在,我应该找到带有邮政编码的房子的平均价格 - 93038.所以,我把问题分解成更小的位,因为我很天真并且决定用我的直觉。这是我到目前为止所尝试的。首先,我试图找到一种方法来创建一个过滤器,这样我只能用邮政编码提取房子的价格 - 93038。
import graphlab
sf = graphlab.SFrame('home_data.gl')
sf[(sf['zipcode']=='93038')]
这些显示了所有带有邮政编码93038的栏目,但后来我只想显示价值93038的价格和邮政编码栏。我尝试了很多不同的方法,但却无法解决问题。
另外,假设我想找到价格平均值,邮政编码为93038.我该怎么做?
提前致谢。
答案 0 :(得分:2)
你可以尝试:
import graphlab as gl
sf = gl.SFrame({'price':[1,4,2],'zipcode':['93038','93038','93037']})
# Filtering
filter_sf = sf[(sf['zipcode']=='93038')]
# Displaying
print filter_sf[['price', 'zipcode']]
# Averaging a column
print filter_sf['price'].mean()
答案 1 :(得分:0)
I and team discussed and decide for JobNo ACK33938Y9 . Need to validate it . Next no : JIK24928Z9.
答案 2 :(得分:0)
这是我做的:
- 第一个选项
sf[sf['zipcode']=='98039']['price'].mean()
- 第二个选项
zip = ['98039'] *#create your variable with the zipcode you want*
m_price = sf.filter_by(zip, 'zipcode') *#you filter the column 'zipcode' by your zipcode*
print m_price['price'].mean() *#print the mean of the zipcode*
答案 3 :(得分:0)
使用GroupBy操作和topk()函数
import graphlab.aggregate as agg
sf_ = sf.groupby(key_columns = 'zipcode', operations={'Mean by ZipCode' : agg.MEAN('price')})
sf_.topk('Mean by ZipCode', k=1)