SharedNynke2.ipynbOpen in CoCalc
Author: Glen Cripps
Views : 8
In [87]:
import pandas as pd import numpy as np #df = pd.read_csv('addresses.csv') #print(df.columns) import pandas as pd df = pd.read_csv('trainingset.csv', sep=',', low_memory = False).head(200000) df = df.rename(columns={'bbl_id': 'building_id', "bldg_ctgy": "building_category", "tax_cls_p": "tax_class_present", "bldg_cls_p": "building_class_present", "res_unit": "residential_unit", "com_unit" : "community_unit", "tot_unit" : "total_units", "yr_built" : "year_built", "tax_cls_s": "tax_class_sale", "bldg_cls_s" : "building_class_sale"}) print(df.columns) id = df[['building_id', 'price']] df = df[df['price']>75000] df['tax_class_sale'] = df['tax_class_sale'].replace([1,2,3,4], [20.9, 12.6, 12.1, 10.5]) print(df['long'])
Index([u'Unnamed: 0', u'Unnamed: 0.1', u'Unnamed: 0_x', u'Sale_id_x', u'building_id', u'year', u'borough', u'building_category', u'tax_class_present', u'block', u'lot', u'easmnt', u'building_class_present', u'address', u'apt', u'zip', u'residential_unit', u'community_unit', u'total_units', u'land_sqft', u'tot_sqft', u'year_built', u'tax_class_sale', u'building_class_sale', u'sale_date', u'price', u'usable', u'long', u'lat', u'Unnamed: 0_y', u'Sale_id_y', u'0', u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13', u'14', u'15', u'16', u'17', u'18', u'19', u'20', u'21', u'22', u'23', u'24', u'25', u'26', u'27', u'28', u'29', u'30', u'31'], dtype='object') 2 -73.979713 3 -73.979713 8 -73.979713 9 -73.979713 10 -73.977532 17 -73.979713 23 -73.979713 25 -73.979713 27 -73.977532 28 -73.979713 29 -73.979713 31 -73.977532 34 -73.979713 37 -73.979713 41 -73.979713 45 -73.977532 49 -73.979713 57 -73.977532 59 -73.979713 60 -73.977532 74 -73.979713 80 -73.977532 83 -73.979713 85 -73.979713 86 -73.977532 87 -73.979713 89 -73.979713 90 -73.979713 94 -73.977532 95 -73.808408 ... 199879 -73.977532 199883 -73.979713 199885 -73.977532 199887 -73.979713 199896 -73.979713 199903 -73.979713 199908 -73.979713 199909 -73.979713 199914 -73.728208 199916 -73.979713 199917 -73.848525 199921 -73.977532 199923 -73.979713 199926 -73.979713 199928 -73.979713 199934 -73.977532 199935 -73.977532 199936 -73.979713 199949 -73.977532 199953 -73.979713 199959 -73.979713 199961 -73.979713 199962 -73.977532 199963 -73.979713 199971 -73.979713 199975 -73.979713 199979 -73.979713 199984 -73.979713 199993 -73.979713 199994 -73.977532 Name: long, Length: 57407, dtype: float64
In [88]:
import re df['sale_date'] = df['sale_date'].apply(lambda x: re.sub(r'/','-', str(x))) df['sale_date'] = df['sale_date'].apply(lambda x: re.sub(r'-[0-9]{2}-[0-9]{4}$','', str(x))) df['sale_date'] = df['sale_date'].apply(lambda x: re.sub(r'-[0-9]{2}-[0-9]{4}$','', str(x))) df['sale_date'] = df['sale_date'].apply(lambda x: re.sub(r'-','', str(x))) df['sale_date'] = df['sale_date'].astype('int64') df = df[df['sale_date'] < 13] print(df.head()) df2 = df print(df['long'])
Unnamed: 0 Unnamed: 0.1 Unnamed: 0_x Sale_id_x building_id year \ 2 2 2976484 42432 42433.0 110061303.0 2015.0 3 3 1481479 41194 41195.0 110061302.0 2015.0 9 9 3098587 42518 42519.0 110061303.0 2015.0 10 10 195925 40046 40047.0 1100937.0 2015.0 17 17 2382082 41955 41956.0 110061302.0 2015.0 borough building_category tax_class_present block ... 22 \ 2 1.0 45 CONDO HOTELS 4 1006.0 ... 0.301583 3 1.0 45 CONDO HOTELS 4 1006.0 ... 0.301583 9 1.0 45 CONDO HOTELS 4 1006.0 ... 0.301583 10 1.0 26 OTHER HOTELS 4 1009.0 ... 0.347919 17 1.0 45 CONDO HOTELS 4 1006.0 ... 0.301583 23 24 25 26 27 28 29 \ 2 -0.246003 -0.022376 -0.080384 0.211984 0.337958 -0.279782 -0.276492 3 -0.246003 -0.022376 -0.080384 0.211984 0.337958 -0.279782 -0.276492 9 -0.246003 -0.022376 -0.080384 0.211984 0.337958 -0.279782 -0.276492 10 -0.285677 -0.025016 -0.066139 0.246079 0.399279 -0.320149 -0.313708 17 -0.246003 -0.022376 -0.080384 0.211984 0.337958 -0.279782 -0.276492 30 31 2 0.185267 -0.056272 3 0.185267 -0.056272 9 0.185267 -0.056272 10 0.211737 -0.062799 17 0.185267 -0.056272 [5 rows x 63 columns] 2 -73.979713 3 -73.979713 9 -73.979713 10 -73.977532 17 -73.979713 23 -73.979713 25 -73.979713 27 -73.977532 28 -73.979713 29 -73.979713 31 -73.977532 34 -73.979713 41 -73.979713 57 -73.977532 59 -73.979713 60 -73.977532 74 -73.979713 80 -73.977532 83 -73.979713 85 -73.979713 86 -73.977532 89 -73.979713 90 -73.979713 105 -73.979713 111 -73.979713 118 -73.979713 126 -73.867804 128 -73.979713 132 -73.840192 133 -73.979713 ... 199816 -73.979713 199819 -73.979713 199826 -73.979713 199830 -73.848525 199837 -73.979713 199847 -73.979713 199853 -73.979713 199870 -73.979713 199879 -73.977532 199883 -73.979713 199896 -73.979713 199903 -73.979713 199908 -73.979713 199909 -73.979713 199917 -73.848525 199923 -73.979713 199926 -73.979713 199928 -73.979713 199934 -73.977532 199935 -73.977532 199949 -73.977532 199953 -73.979713 199959 -73.979713 199961 -73.979713 199963 -73.979713 199971 -73.979713 199975 -73.979713 199979 -73.979713 199993 -73.979713 199994 -73.977532 Name: long, Length: 38308, dtype: float64
In [89]:
df['tax_class_sale'] = df['tax_class_sale'].replace([1,2,3,4], [20.9, 12.6, 12.1, 10.5]) building_category_dummies = pd.get_dummies(df["building_category"], prefix=df["building_category"].name) df = df.drop(columns="building_category") df_build_cat = pd.concat([id, building_category_dummies], axis=1) df = df_build_cat X = df.drop(columns=['price', 'building_id']) print(X)
building_category_01 ONE FAMILY DWELLINGS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_02 TWO FAMILY DWELLINGS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_03 THREE FAMILY DWELLINGS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_04 TAX CLASS 1 CONDOS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_05 TAX CLASS 1 VACANT LAND \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_06 TAX CLASS 1 - OTHER \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_07 RENTALS - WALKUP APARTMENTS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_08 RENTALS - ELEVATOR APARTMENTS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_09 COOPS - WALKUP APARTMENTS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_10 COOPS - ELEVATOR APARTMENTS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN ... \ 0 ... 1 ... 2 ... 3 ... 4 ... 5 ... 6 ... 7 ... 8 ... 9 ... 10 ... 11 ... 12 ... 13 ... 14 ... 15 ... 16 ... 17 ... 18 ... 19 ... 20 ... 21 ... 22 ... 23 ... 24 ... 25 ... 26 ... 27 ... 28 ... 29 ... ... ... 199970 ... 199971 ... 199972 ... 199973 ... 199974 ... 199975 ... 199976 ... 199977 ... 199978 ... 199979 ... 199980 ... 199981 ... 199982 ... 199983 ... 199984 ... 199985 ... 199986 ... 199987 ... 199988 ... 199989 ... 199990 ... 199991 ... 199992 ... 199993 ... 199994 ... 199995 ... 199996 ... 199997 ... 199998 ... 199999 ... building_category_31 COMMERCIAL VACANT LAND \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_34 THEATRES \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_35 INDOOR PUBLIC AND CULTURAL FACILITIES \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_37 RELIGIOUS FACILITIES \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_41 TAX CLASS 4 - OTHER \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_43 CONDO OFFICE BUILDINGS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_44 CONDO PARKING \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_45 CONDO HOTELS \ 0 NaN 1 NaN 2 1.0 3 1.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 1.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 1.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 1.0 24 NaN 25 1.0 26 NaN 27 0.0 28 1.0 29 1.0 ... ... 199970 NaN 199971 1.0 199972 NaN 199973 NaN 199974 NaN 199975 1.0 199976 NaN 199977 NaN 199978 NaN 199979 1.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 1.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_46 CONDO STORE BUILDINGS \ 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN building_category_48 CONDO TERRACES/GARDENS/CABANAS 0 NaN 1 NaN 2 0.0 3 0.0 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 0.0 10 0.0 11 NaN 12 NaN 13 NaN 14 NaN 15 NaN 16 NaN 17 0.0 18 NaN 19 NaN 20 NaN 21 NaN 22 NaN 23 0.0 24 NaN 25 0.0 26 NaN 27 0.0 28 0.0 29 0.0 ... ... 199970 NaN 199971 0.0 199972 NaN 199973 NaN 199974 NaN 199975 0.0 199976 NaN 199977 NaN 199978 NaN 199979 0.0 199980 NaN 199981 NaN 199982 NaN 199983 NaN 199984 NaN 199985 NaN 199986 NaN 199987 NaN 199988 NaN 199989 NaN 199990 NaN 199991 NaN 199992 NaN 199993 0.0 199994 0.0 199995 NaN 199996 NaN 199997 NaN 199998 NaN 199999 NaN [200000 rows x 31 columns]
In [90]:
# ======================= #X = df.drop(columns=['price', 'Unnamed: 0', 'building_id']) Y = df.price #Y = np.array(Y).reshape(-1) from sklearn.model_selection import train_test_split
In [96]:
X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size = .20, random_state = 40) print(X_train.shape) print(X_test.shape) from sklearn.linear_model import LinearRegression lr = LinearRegression()
(160000, 31) (40000, 31)
In [97]:
X_train.fillna(0,inplace=True)
/usr/local/lib/python2.7/dist-packages/pandas/core/frame.py:3790: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy downcast=downcast, **kwargs)
In [98]:
# Fitting the model lr.fit(X_train, y_train)
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)
In [99]:
# R^2 scores print('Train:', lr.score(X_train, y_train)) print('Validation:', lr.score(X_test, y_test)) from sklearn.metrics import mean_absolute_error print('MAE:', mean_absolute_error(y_test, lr.predict(X_test))) print('Random prediction:', abs(y_test - y_test.mean()).mean() )
('Train:', 0.2760384993850762)
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-99-a124c5d026b1> in <module>() 1 # R^2 scores 2 print('Train:', lr.score(X_train, y_train)) ----> 3 print('Validation:', lr.score(X_test, y_test)) 4 5 from sklearn.metrics import mean_absolute_error /usr/lib/python2.7/dist-packages/sklearn/base.pyc in score(self, X, y, sample_weight) 384 385 from .metrics import r2_score --> 386 return r2_score(y, self.predict(X), sample_weight=sample_weight, 387 multioutput='variance_weighted') 388 /usr/lib/python2.7/dist-packages/sklearn/linear_model/base.pyc in predict(self, X) 254 Returns predicted values. 255 """ --> 256 return self._decision_function(X) 257 258 _preprocess_data = staticmethod(_preprocess_data) /usr/lib/python2.7/dist-packages/sklearn/linear_model/base.pyc in _decision_function(self, X) 237 check_is_fitted(self, "coef_") 238 --> 239 X = check_array(X, accept_sparse=['csr', 'csc', 'coo']) 240 return safe_sparse_dot(X, self.coef_.T, 241 dense_output=True) + self.intercept_ /usr/lib/python2.7/dist-packages/sklearn/utils/validation.pyc in check_array(array, accept_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, warn_on_dtype, estimator) 451 % (array.ndim, estimator_name)) 452 if force_all_finite: --> 453 _assert_all_finite(array) 454 455 shape_repr = _shape_repr(array.shape) /usr/lib/python2.7/dist-packages/sklearn/utils/validation.pyc in _assert_all_finite(X) 42 and not np.isfinite(X).all()): 43 raise ValueError("Input contains NaN, infinity" ---> 44 " or a value too large for %r." % X.dtype) 45 46 ValueError: Input contains NaN, infinity or a value too large for dtype('float64').