├── README.md ├── als_model.data ├── data │ ├── product │ │ ├── ._SUCCESS.crc │ │ ├── ._common_metadata.crc │ │ ├── ._metadata.crc │ │ ├── .part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet.crc │ │ ├── _SUCCESS │ │ ├── _common_metadata │ │ ├── _metadata │ │ └── part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet │ └── user │ │ ├── ._SUCCESS.crc │ │ ├── ._common_metadata.crc │ │ ├── ._metadata.crc │ │ ├── .part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet.crc │ │ ├── _SUCCESS │ │ ├── _common_metadata │ │ ├── _metadata │ │ └── part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet └── metadata │ ├── ._SUCCESS.crc │ ├── .part-00000.crc │ ├── _SUCCESS │ └── part-00000 ├── config.py ├── config.pyc ├── dataset └── data_model │ ├── genre.csv │ ├── movies.csv │ ├── ratings.csv │ └── user.csv ├── engine ├── __init__.py ├── __init__.pyc ├── rec_engine.py └── rec_engine.pyc ├── home.png ├── recommend.png ├── server.py ├── server.pyc ├── start_sh.sh └── webapp ├── __init__.py ├── __init__.pyc ├── main ├── __init__.py ├── __init__.pyc ├── forms.py ├── forms.pyc ├── movies.py ├── movies.pyc ├── recommend.py ├── recommend.pyc ├── users.py └── users.pyc └── templates ├── base.html ├── edit_movie_form.html ├── edit_rate_form.html ├── edit_user_form.html ├── index.html ├── movie.html ├── movies.html ├── rate.html ├── recommends.html ├── test.html ├── user.html ├── user_rate_movie.html └── users.html /README.md: -------------------------------------------------------------------------------- 1 | # Spark_Movie_recsys 2 | 在Spark环境下,利用Flask框架,采用Mongodb设计的一个在线电影推荐系统的演示demo 3 | #环境配置 4 | 1.Kubuntu 13.04 64bit 5 | 6 | 2.Spark 1.5 7 | 8 | 3.Flask 9 | 10 | 4.Mongodb 11 | 12 | 5.Python 2.7 13 | 14 | #演示结果 15 | ![image](https://github.com/dreamcity/Spark_Movie_recsys/raw/master/home.png) 16 | ![image](https://github.com/dreamcity/Spark_Movie_recsys/raw/master/recommend.png) 17 | -------------------------------------------------------------------------------- /als_model.data/data/product/._SUCCESS.crc: -------------------------------------------------------------------------------- 1 | crc -------------------------------------------------------------------------------- /als_model.data/data/product/._common_metadata.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/._common_metadata.crc -------------------------------------------------------------------------------- /als_model.data/data/product/._metadata.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/._metadata.crc -------------------------------------------------------------------------------- /als_model.data/data/product/.part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/.part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet.crc -------------------------------------------------------------------------------- /als_model.data/data/product/_SUCCESS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/_SUCCESS -------------------------------------------------------------------------------- /als_model.data/data/product/_common_metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/_common_metadata -------------------------------------------------------------------------------- /als_model.data/data/product/_metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/_metadata -------------------------------------------------------------------------------- /als_model.data/data/product/part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/product/part-r-00000-f84d648d-b491-4392-903a-805ae88196b4.gz.parquet -------------------------------------------------------------------------------- /als_model.data/data/user/._SUCCESS.crc: -------------------------------------------------------------------------------- 1 | crc -------------------------------------------------------------------------------- /als_model.data/data/user/._common_metadata.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/._common_metadata.crc -------------------------------------------------------------------------------- /als_model.data/data/user/._metadata.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/._metadata.crc -------------------------------------------------------------------------------- /als_model.data/data/user/.part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/.part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet.crc -------------------------------------------------------------------------------- /als_model.data/data/user/_SUCCESS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/_SUCCESS -------------------------------------------------------------------------------- /als_model.data/data/user/_common_metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/_common_metadata -------------------------------------------------------------------------------- /als_model.data/data/user/_metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/_metadata -------------------------------------------------------------------------------- /als_model.data/data/user/part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/data/user/part-r-00000-4912439e-a0eb-443d-aada-aee280bfc192.gz.parquet -------------------------------------------------------------------------------- /als_model.data/metadata/._SUCCESS.crc: -------------------------------------------------------------------------------- 1 | crc -------------------------------------------------------------------------------- /als_model.data/metadata/.part-00000.crc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/metadata/.part-00000.crc -------------------------------------------------------------------------------- /als_model.data/metadata/_SUCCESS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/als_model.data/metadata/_SUCCESS -------------------------------------------------------------------------------- /als_model.data/metadata/part-00000: -------------------------------------------------------------------------------- 1 | {"class":"org.apache.spark.mllib.recommendation.MatrixFactorizationModel","version":"1.0","rank":8} 2 | -------------------------------------------------------------------------------- /config.py: -------------------------------------------------------------------------------- 1 | from pymongo import MongoClient 2 | 3 | WTF_CSRF_ENABLED = True 4 | SECRET_KEY = 'This is a movie recsys demo!' 5 | DB_NAME = 'recommendation' 6 | 7 | DATABASE = MongoClient()[DB_NAME] 8 | MOVIES_COLLECTION = DATABASE.movie 9 | USERS_COLLECTION = DATABASE.user 10 | RATE_COLLECTION = DATABASE.rate 11 | GENRE_COLLECTION = DATABASE.genre 12 | 13 | TOTAL_USERS = 0 14 | TOTAL_MOVIES = 0 15 | RECOMMEND_NUMS = 5 16 | DEBUG = True -------------------------------------------------------------------------------- /config.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/config.pyc -------------------------------------------------------------------------------- /dataset/data_model/genre.csv: -------------------------------------------------------------------------------- 1 | { "_id" : { "$oid" : "5666f322ba87840a40bcdded" }, "11" : "Horror", "10" : "Film-Noir", "13" : "Mystery", "12" : "Musical", "15" : "Sci-Fi", "14" : "Romance", "17" : "War", "16" : "Thriller", "18" : "Western", "1" : "Action", "0" : "unknown", "3" : "Animation", "2" : "Adventure", "5" : "Comedy", "4" : "Children's", "7" : "Documentary", "6" : "Crime", "9" : "Fantasy", "8" : "Drama" } 2 | -------------------------------------------------------------------------------- /dataset/data_model/user.csv: -------------------------------------------------------------------------------- 1 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ac" }, "age" : 23, "gender" : "F", "id" : 1, "name" : "dreamcity", "occupation" : "student", "zip_code" : "85711" } 2 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ad" }, "occupation" : "other", "gender" : "F", "age" : "53", "id" : 2, "zip_code" : "94043" } 3 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ae" }, "occupation" : "writer", "gender" : "M", "age" : "23", "id" : 3, "zip_code" : "32067" } 4 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3af" }, "occupation" : "technician", "gender" : "M", "age" : "24", "id" : 4, "zip_code" : "43537" } 5 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b0" }, "occupation" : "other", "gender" : "F", "age" : "33", "id" : 5, "zip_code" : "15213" } 6 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b1" }, "occupation" : "executive", "gender" : "M", "age" : "42", "id" : 6, "zip_code" : "98101" } 7 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b2" }, "occupation" : "administrator", "gender" : "M", "age" : "57", "id" : 7, "zip_code" : "91344" } 8 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b3" }, "occupation" : "administrator", "gender" : "M", "age" : "36", "id" : 8, "zip_code" : "05201" } 9 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b4" }, "occupation" : "student", "gender" : "M", "age" : "29", "id" : 9, "zip_code" : "01002" } 10 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b5" }, "occupation" : "lawyer", "gender" : "M", "age" : "53", "id" : 10, "zip_code" : "90703" } 11 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b6" }, "occupation" : "other", "gender" : "F", "age" : "39", "id" : 11, "zip_code" : "30329" } 12 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b7" }, "occupation" : "other", "gender" : "F", "age" : "28", "id" : 12, "zip_code" : "06405" } 13 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b8" }, "occupation" : "educator", "gender" : "M", "age" : "47", "id" : 13, "zip_code" : "29206" } 14 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3b9" }, "occupation" : "scientist", "gender" : "M", "age" : "45", "id" : 14, "zip_code" : "55106" } 15 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ba" }, "occupation" : "educator", "gender" : "F", "age" : "49", "id" : 15, "zip_code" : "97301" } 16 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3bb" }, "occupation" : "entertainment", "gender" : "M", "age" : "21", "id" : 16, "zip_code" : "10309" } 17 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3bc" }, "occupation" : "programmer", "gender" : "M", "age" : "30", "id" : 17, "zip_code" : "06355" } 18 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3bd" }, "occupation" : "other", "gender" : "F", "age" : "35", "id" : 18, "zip_code" : "37212" } 19 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3be" }, "occupation" : "librarian", "gender" : "M", "age" : "40", "id" : 19, "zip_code" : "02138" } 20 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3bf" }, "occupation" : "homemaker", "gender" : "F", "age" : "42", "id" : 20, "zip_code" : "95660" } 21 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c0" }, "occupation" : "writer", "gender" : "M", "age" : "26", "id" : 21, "zip_code" : "30068" } 22 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c1" }, "occupation" : "writer", "gender" : "M", "age" : "25", "id" : 22, "zip_code" : "40206" } 23 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c2" }, "occupation" : "artist", "gender" : "F", "age" : "30", "id" : 23, "zip_code" : "48197" } 24 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c3" }, "occupation" : "artist", "gender" : "F", "age" : "21", "id" : 24, "zip_code" : "94533" } 25 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c4" }, "occupation" : "engineer", "gender" : "M", "age" : "39", "id" : 25, "zip_code" : "55107" } 26 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c5" }, "occupation" : "engineer", "gender" : "M", "age" : "49", "id" : 26, "zip_code" : "21044" } 27 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c6" }, "occupation" : "librarian", "gender" : "F", "age" : "40", "id" : 27, "zip_code" : "30030" } 28 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c7" }, "occupation" : "writer", "gender" : "M", "age" : "32", "id" : 28, "zip_code" : "55369" } 29 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c8" }, "occupation" : "programmer", "gender" : "M", "age" : "41", "id" : 29, "zip_code" : "94043" } 30 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3c9" }, "occupation" : "student", "gender" : "M", "age" : "7", "id" : 30, "zip_code" : "55436" } 31 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ca" }, "occupation" : "artist", "gender" : "M", "age" : "24", "id" : 31, "zip_code" : "10003" } 32 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3cb" }, "occupation" : "student", "gender" : "F", "age" : "28", "id" : 32, "zip_code" : "78741" } 33 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3cc" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 33, "zip_code" : "27510" } 34 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3cd" }, "occupation" : "administrator", "gender" : "F", "age" : "38", "id" : 34, "zip_code" : "42141" } 35 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ce" }, "occupation" : "homemaker", "gender" : "F", "age" : "20", "id" : 35, "zip_code" : "42459" } 36 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3cf" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 36, "zip_code" : "93117" } 37 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d0" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 37, "zip_code" : "55105" } 38 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d1" }, "occupation" : "other", "gender" : "F", "age" : "28", "id" : 38, "zip_code" : "54467" } 39 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d2" }, "occupation" : "entertainment", "gender" : "M", "age" : "41", "id" : 39, "zip_code" : "01040" } 40 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d3" }, "occupation" : "scientist", "gender" : "M", "age" : "38", "id" : 40, "zip_code" : "27514" } 41 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d4" }, "occupation" : "engineer", "gender" : "M", "age" : "33", "id" : 41, "zip_code" : "80525" } 42 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d5" }, "occupation" : "administrator", "gender" : "M", "age" : "30", "id" : 42, "zip_code" : "17870" } 43 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d6" }, "occupation" : "librarian", "gender" : "F", "age" : "29", "id" : 43, "zip_code" : "20854" } 44 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d7" }, "occupation" : "technician", "gender" : "M", "age" : "26", "id" : 44, "zip_code" : "46260" } 45 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d8" }, "occupation" : "programmer", "gender" : "M", "age" : "29", "id" : 45, "zip_code" : "50233" } 46 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3d9" }, "occupation" : "marketing", "gender" : "F", "age" : "27", "id" : 46, "zip_code" : "46538" } 47 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3da" }, "occupation" : "marketing", "gender" : "M", "age" : "53", "id" : 47, "zip_code" : "07102" } 48 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3db" }, "occupation" : "administrator", "gender" : "M", "age" : "45", "id" : 48, "zip_code" : "12550" } 49 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3dc" }, "occupation" : "student", "gender" : "F", "age" : "23", "id" : 49, "zip_code" : "76111" } 50 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3dd" }, "occupation" : "writer", "gender" : "M", "age" : "21", "id" : 50, "zip_code" : "52245" } 51 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3de" }, "occupation" : "educator", "gender" : "M", "age" : "28", "id" : 51, "zip_code" : "16509" } 52 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3df" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 52, "zip_code" : "55105" } 53 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e0" }, "occupation" : "programmer", "gender" : "M", "age" : "26", "id" : 53, "zip_code" : "55414" } 54 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e1" }, "occupation" : "executive", "gender" : "M", "age" : "22", "id" : 54, "zip_code" : "66315" } 55 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e2" }, "occupation" : "programmer", "gender" : "M", "age" : "37", "id" : 55, "zip_code" : "01331" } 56 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e3" }, "occupation" : "librarian", "gender" : "M", "age" : "25", "id" : 56, "zip_code" : "46260" } 57 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e4" }, "occupation" : "none", "gender" : "M", "age" : "16", "id" : 57, "zip_code" : "84010" } 58 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e5" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 58, "zip_code" : "52246" } 59 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e6" }, "occupation" : "educator", "gender" : "M", "age" : "49", "id" : 59, "zip_code" : "08403" } 60 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e7" }, "occupation" : "healthcare", "gender" : "M", "age" : "50", "id" : 60, "zip_code" : "06472" } 61 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e8" }, "occupation" : "engineer", "gender" : "M", "age" : "36", "id" : 61, "zip_code" : "30040" } 62 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3e9" }, "occupation" : "administrator", "gender" : "F", "age" : "27", "id" : 62, "zip_code" : "97214" } 63 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ea" }, "occupation" : "marketing", "gender" : "M", "age" : "31", "id" : 63, "zip_code" : "75240" } 64 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3eb" }, "occupation" : "educator", "gender" : "M", "age" : "32", "id" : 64, "zip_code" : "43202" } 65 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ec" }, "occupation" : "educator", "gender" : "F", "age" : "51", "id" : 65, "zip_code" : "48118" } 66 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ed" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 66, "zip_code" : "80521" } 67 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ee" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 67, "zip_code" : "60402" } 68 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ef" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 68, "zip_code" : "22904" } 69 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f0" }, "occupation" : "engineer", "gender" : "M", "age" : "24", "id" : 69, "zip_code" : "55337" } 70 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f1" }, "occupation" : "engineer", "gender" : "M", "age" : "27", "id" : 70, "zip_code" : "60067" } 71 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f2" }, "occupation" : "scientist", "gender" : "M", "age" : "39", "id" : 71, "zip_code" : "98034" } 72 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f3" }, "occupation" : "administrator", "gender" : "F", "age" : "48", "id" : 72, "zip_code" : "73034" } 73 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f4" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 73, "zip_code" : "41850" } 74 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f5" }, "occupation" : "scientist", "gender" : "M", "age" : "39", "id" : 74, "zip_code" : "T8H1N" } 75 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f6" }, "occupation" : "entertainment", "gender" : "M", "age" : "24", "id" : 75, "zip_code" : "08816" } 76 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f7" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 76, "zip_code" : "02215" } 77 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f8" }, "occupation" : "technician", "gender" : "M", "age" : "30", "id" : 77, "zip_code" : "29379" } 78 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3f9" }, "occupation" : "administrator", "gender" : "M", "age" : "26", "id" : 78, "zip_code" : "61801" } 79 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3fa" }, "occupation" : "administrator", "gender" : "F", "age" : "39", "id" : 79, "zip_code" : "03755" } 80 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3fb" }, "occupation" : "administrator", "gender" : "F", "age" : "34", "id" : 80, "zip_code" : "52241" } 81 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3fc" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 81, "zip_code" : "21218" } 82 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3fd" }, "occupation" : "programmer", "gender" : "M", "age" : "50", "id" : 82, "zip_code" : "22902" } 83 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3fe" }, "occupation" : "other", "gender" : "M", "age" : "40", "id" : 83, "zip_code" : "44133" } 84 | { "_id" : { "$oid" : "5666f321ba87840a40bcd3ff" }, "occupation" : "executive", "gender" : "M", "age" : "32", "id" : 84, "zip_code" : "55369" } 85 | { "_id" : { "$oid" : "5666f321ba87840a40bcd400" }, "occupation" : "educator", "gender" : "M", "age" : "51", "id" : 85, "zip_code" : "20003" } 86 | { "_id" : { "$oid" : "5666f321ba87840a40bcd401" }, "occupation" : "administrator", "gender" : "M", "age" : "26", "id" : 86, "zip_code" : "46005" } 87 | { "_id" : { "$oid" : "5666f321ba87840a40bcd402" }, "occupation" : "administrator", "gender" : "M", "age" : "47", "id" : 87, "zip_code" : "89503" } 88 | { "_id" : { "$oid" : "5666f321ba87840a40bcd403" }, "occupation" : "librarian", "gender" : "F", "age" : "49", "id" : 88, "zip_code" : "11701" } 89 | { "_id" : { "$oid" : "5666f321ba87840a40bcd404" }, "occupation" : "administrator", "gender" : "F", "age" : "43", "id" : 89, "zip_code" : "68106" } 90 | { "_id" : { "$oid" : "5666f321ba87840a40bcd405" }, "occupation" : "educator", "gender" : "M", "age" : "60", "id" : 90, "zip_code" : "78155" } 91 | { "_id" : { "$oid" : "5666f321ba87840a40bcd406" }, "occupation" : "marketing", "gender" : "M", "age" : "55", "id" : 91, "zip_code" : "01913" } 92 | { "_id" : { "$oid" : "5666f321ba87840a40bcd407" }, "occupation" : "entertainment", "gender" : "M", "age" : "32", "id" : 92, "zip_code" : "80525" } 93 | { "_id" : { "$oid" : "5666f321ba87840a40bcd408" }, "occupation" : "executive", "gender" : "M", "age" : "48", "id" : 93, "zip_code" : "23112" } 94 | { "_id" : { "$oid" : "5666f321ba87840a40bcd409" }, "occupation" : "student", "gender" : "M", "age" : "26", "id" : 94, "zip_code" : "71457" } 95 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40a" }, "occupation" : "administrator", "gender" : "M", "age" : "31", "id" : 95, "zip_code" : "10707" } 96 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40b" }, "occupation" : "artist", "gender" : "F", "age" : "25", "id" : 96, "zip_code" : "75206" } 97 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40c" }, "occupation" : "artist", "gender" : "M", "age" : "43", "id" : 97, "zip_code" : "98006" } 98 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40d" }, "occupation" : "executive", "gender" : "F", "age" : "49", "id" : 98, "zip_code" : "90291" } 99 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40e" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 99, "zip_code" : "63129" } 100 | { "_id" : { "$oid" : "5666f321ba87840a40bcd40f" }, "occupation" : "executive", "gender" : "M", "age" : "36", "id" : 100, "zip_code" : "90254" } 101 | { "_id" : { "$oid" : "5666f321ba87840a40bcd410" }, "occupation" : "student", "gender" : "M", "age" : "15", "id" : 101, "zip_code" : "05146" } 102 | { "_id" : { "$oid" : "5666f321ba87840a40bcd411" }, "occupation" : "programmer", "gender" : "M", "age" : "38", "id" : 102, "zip_code" : "30220" } 103 | { "_id" : { "$oid" : "5666f321ba87840a40bcd412" }, "occupation" : "student", "gender" : "M", "age" : "26", "id" : 103, "zip_code" : "55108" } 104 | { "_id" : { "$oid" : "5666f321ba87840a40bcd413" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 104, "zip_code" : "55108" } 105 | { "_id" : { "$oid" : "5666f321ba87840a40bcd414" }, "occupation" : "engineer", "gender" : "M", "age" : "24", "id" : 105, "zip_code" : "94043" } 106 | { "_id" : { "$oid" : "5666f321ba87840a40bcd415" }, "occupation" : "retired", "gender" : "M", "age" : "61", "id" : 106, "zip_code" : "55125" } 107 | { "_id" : { "$oid" : "5666f321ba87840a40bcd416" }, "occupation" : "scientist", "gender" : "M", "age" : "39", "id" : 107, "zip_code" : "60466" } 108 | { "_id" : { "$oid" : "5666f321ba87840a40bcd417" }, "occupation" : "educator", "gender" : "M", "age" : "44", "id" : 108, "zip_code" : "63130" } 109 | { "_id" : { "$oid" : "5666f321ba87840a40bcd418" }, "occupation" : "other", "gender" : "M", "age" : "29", "id" : 109, "zip_code" : "55423" } 110 | { "_id" : { "$oid" : "5666f321ba87840a40bcd419" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 110, "zip_code" : "77840" } 111 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41a" }, "occupation" : "engineer", "gender" : "M", "age" : "57", "id" : 111, "zip_code" : "90630" } 112 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41b" }, "occupation" : "salesman", "gender" : "M", "age" : "30", "id" : 112, "zip_code" : "60613" } 113 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41c" }, "occupation" : "executive", "gender" : "M", "age" : "47", "id" : 113, "zip_code" : "95032" } 114 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41d" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 114, "zip_code" : "75013" } 115 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41e" }, "occupation" : "engineer", "gender" : "M", "age" : "31", "id" : 115, "zip_code" : "17110" } 116 | { "_id" : { "$oid" : "5666f321ba87840a40bcd41f" }, "occupation" : "healthcare", "gender" : "M", "age" : "40", "id" : 116, "zip_code" : "97232" } 117 | { "_id" : { "$oid" : "5666f321ba87840a40bcd420" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 117, "zip_code" : "16125" } 118 | { "_id" : { "$oid" : "5666f321ba87840a40bcd421" }, "occupation" : "administrator", "gender" : "M", "age" : "21", "id" : 118, "zip_code" : "90210" } 119 | { "_id" : { "$oid" : "5666f321ba87840a40bcd422" }, "occupation" : "programmer", "gender" : "M", "age" : "32", "id" : 119, "zip_code" : "67401" } 120 | { "_id" : { "$oid" : "5666f321ba87840a40bcd423" }, "occupation" : "other", "gender" : "F", "age" : "47", "id" : 120, "zip_code" : "06260" } 121 | { "_id" : { "$oid" : "5666f321ba87840a40bcd424" }, "occupation" : "librarian", "gender" : "M", "age" : "54", "id" : 121, "zip_code" : "99603" } 122 | { "_id" : { "$oid" : "5666f321ba87840a40bcd425" }, "occupation" : "writer", "gender" : "F", "age" : "32", "id" : 122, "zip_code" : "22206" } 123 | { "_id" : { "$oid" : "5666f321ba87840a40bcd426" }, "occupation" : "artist", "gender" : "F", "age" : "48", "id" : 123, "zip_code" : "20008" } 124 | { "_id" : { "$oid" : "5666f321ba87840a40bcd427" }, "occupation" : "student", "gender" : "M", "age" : "34", "id" : 124, "zip_code" : "60615" } 125 | { "_id" : { "$oid" : "5666f321ba87840a40bcd428" }, "occupation" : "lawyer", "gender" : "M", "age" : "30", "id" : 125, "zip_code" : "22202" } 126 | { "_id" : { "$oid" : "5666f321ba87840a40bcd429" }, "occupation" : "lawyer", "gender" : "F", "age" : "28", "id" : 126, "zip_code" : "20015" } 127 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42a" }, "occupation" : "none", "gender" : "M", "age" : "33", "id" : 127, "zip_code" : "73439" } 128 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42b" }, "occupation" : "marketing", "gender" : "F", "age" : "24", "id" : 128, "zip_code" : "20009" } 129 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42c" }, "occupation" : "marketing", "gender" : "F", "age" : "36", "id" : 129, "zip_code" : "07039" } 130 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42d" }, "occupation" : "none", "gender" : "M", "age" : "20", "id" : 130, "zip_code" : "60115" } 131 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42e" }, "occupation" : "administrator", "gender" : "F", "age" : "59", "id" : 131, "zip_code" : "15237" } 132 | { "_id" : { "$oid" : "5666f321ba87840a40bcd42f" }, "occupation" : "other", "gender" : "M", "age" : "24", "id" : 132, "zip_code" : "94612" } 133 | { "_id" : { "$oid" : "5666f321ba87840a40bcd430" }, "occupation" : "engineer", "gender" : "M", "age" : "53", "id" : 133, "zip_code" : "78602" } 134 | { "_id" : { "$oid" : "5666f321ba87840a40bcd431" }, "occupation" : "programmer", "gender" : "M", "age" : "31", "id" : 134, "zip_code" : "80236" } 135 | { "_id" : { "$oid" : "5666f321ba87840a40bcd432" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 135, "zip_code" : "38401" } 136 | { "_id" : { "$oid" : "5666f321ba87840a40bcd433" }, "occupation" : "other", "gender" : "M", "age" : "51", "id" : 136, "zip_code" : "97365" } 137 | { "_id" : { "$oid" : "5666f321ba87840a40bcd434" }, "occupation" : "educator", "gender" : "M", "age" : "50", "id" : 137, "zip_code" : "84408" } 138 | { "_id" : { "$oid" : "5666f321ba87840a40bcd435" }, "occupation" : "doctor", "gender" : "M", "age" : "46", "id" : 138, "zip_code" : "53211" } 139 | { "_id" : { "$oid" : "5666f321ba87840a40bcd436" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 139, "zip_code" : "08904" } 140 | { "_id" : { "$oid" : "5666f321ba87840a40bcd437" }, "occupation" : "student", "gender" : "F", "age" : "30", "id" : 140, "zip_code" : "32250" } 141 | { "_id" : { "$oid" : "5666f321ba87840a40bcd438" }, "occupation" : "programmer", "gender" : "M", "age" : "49", "id" : 141, "zip_code" : "36117" } 142 | { "_id" : { "$oid" : "5666f321ba87840a40bcd439" }, "occupation" : "other", "gender" : "M", "age" : "13", "id" : 142, "zip_code" : "48118" } 143 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43a" }, "occupation" : "technician", "gender" : "M", "age" : "42", "id" : 143, "zip_code" : "08832" } 144 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43b" }, "occupation" : "programmer", "gender" : "M", "age" : "53", "id" : 144, "zip_code" : "20910" } 145 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43c" }, "occupation" : "entertainment", "gender" : "M", "age" : "31", "id" : 145, "zip_code" : "V3N4P" } 146 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43d" }, "occupation" : "artist", "gender" : "M", "age" : "45", "id" : 146, "zip_code" : "83814" } 147 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43e" }, "occupation" : "librarian", "gender" : "F", "age" : "40", "id" : 147, "zip_code" : "02143" } 148 | { "_id" : { "$oid" : "5666f321ba87840a40bcd43f" }, "occupation" : "engineer", "gender" : "M", "age" : "33", "id" : 148, "zip_code" : "97006" } 149 | { "_id" : { "$oid" : "5666f321ba87840a40bcd440" }, "occupation" : "marketing", "gender" : "F", "age" : "35", "id" : 149, "zip_code" : "17325" } 150 | { "_id" : { "$oid" : "5666f321ba87840a40bcd441" }, "occupation" : "artist", "gender" : "F", "age" : "20", "id" : 150, "zip_code" : "02139" } 151 | { "_id" : { "$oid" : "5666f321ba87840a40bcd442" }, "occupation" : "administrator", "gender" : "F", "age" : "38", "id" : 151, "zip_code" : "48103" } 152 | { "_id" : { "$oid" : "5666f321ba87840a40bcd443" }, "occupation" : "educator", "gender" : "F", "age" : "33", "id" : 152, "zip_code" : "68767" } 153 | { "_id" : { "$oid" : "5666f321ba87840a40bcd444" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 153, "zip_code" : "60641" } 154 | { "_id" : { "$oid" : "5666f321ba87840a40bcd445" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 154, "zip_code" : "53703" } 155 | { "_id" : { "$oid" : "5666f321ba87840a40bcd446" }, "occupation" : "other", "gender" : "F", "age" : "32", "id" : 155, "zip_code" : "11217" } 156 | { "_id" : { "$oid" : "5666f321ba87840a40bcd447" }, "occupation" : "educator", "gender" : "M", "age" : "25", "id" : 156, "zip_code" : "08360" } 157 | { "_id" : { "$oid" : "5666f321ba87840a40bcd448" }, "occupation" : "engineer", "gender" : "M", "age" : "57", "id" : 157, "zip_code" : "70808" } 158 | { "_id" : { "$oid" : "5666f321ba87840a40bcd449" }, "occupation" : "educator", "gender" : "M", "age" : "50", "id" : 158, "zip_code" : "27606" } 159 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44a" }, "occupation" : "student", "gender" : "F", "age" : "23", "id" : 159, "zip_code" : "55346" } 160 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44b" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 160, "zip_code" : "66215" } 161 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44c" }, "occupation" : "lawyer", "gender" : "M", "age" : "50", "id" : 161, "zip_code" : "55104" } 162 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44d" }, "occupation" : "artist", "gender" : "M", "age" : "25", "id" : 162, "zip_code" : "15610" } 163 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44e" }, "occupation" : "administrator", "gender" : "M", "age" : "49", "id" : 163, "zip_code" : "97212" } 164 | { "_id" : { "$oid" : "5666f321ba87840a40bcd44f" }, "occupation" : "healthcare", "gender" : "M", "age" : "47", "id" : 164, "zip_code" : "80123" } 165 | { "_id" : { "$oid" : "5666f321ba87840a40bcd450" }, "occupation" : "other", "gender" : "F", "age" : "20", "id" : 165, "zip_code" : "53715" } 166 | { "_id" : { "$oid" : "5666f321ba87840a40bcd451" }, "occupation" : "educator", "gender" : "M", "age" : "47", "id" : 166, "zip_code" : "55113" } 167 | { "_id" : { "$oid" : "5666f321ba87840a40bcd452" }, "occupation" : "other", "gender" : "M", "age" : "37", "id" : 167, "zip_code" : "L9G2B" } 168 | { "_id" : { "$oid" : "5666f321ba87840a40bcd453" }, "occupation" : "other", "gender" : "M", "age" : "48", "id" : 168, "zip_code" : "80127" } 169 | { "_id" : { "$oid" : "5666f321ba87840a40bcd454" }, "occupation" : "other", "gender" : "F", "age" : "52", "id" : 169, "zip_code" : "53705" } 170 | { "_id" : { "$oid" : "5666f321ba87840a40bcd455" }, "occupation" : "healthcare", "gender" : "F", "age" : "53", "id" : 170, "zip_code" : "30067" } 171 | { "_id" : { "$oid" : "5666f321ba87840a40bcd456" }, "occupation" : "educator", "gender" : "F", "age" : "48", "id" : 171, "zip_code" : "78750" } 172 | { "_id" : { "$oid" : "5666f321ba87840a40bcd457" }, "occupation" : "marketing", "gender" : "M", "age" : "55", "id" : 172, "zip_code" : "22207" } 173 | { "_id" : { "$oid" : "5666f321ba87840a40bcd458" }, "occupation" : "other", "gender" : "M", "age" : "56", "id" : 173, "zip_code" : "22306" } 174 | { "_id" : { "$oid" : "5666f321ba87840a40bcd459" }, "occupation" : "administrator", "gender" : "F", "age" : "30", "id" : 174, "zip_code" : "52302" } 175 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45a" }, "occupation" : "scientist", "gender" : "F", "age" : "26", "id" : 175, "zip_code" : "21911" } 176 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45b" }, "occupation" : "scientist", "gender" : "M", "age" : "28", "id" : 176, "zip_code" : "07030" } 177 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45c" }, "occupation" : "programmer", "gender" : "M", "age" : "20", "id" : 177, "zip_code" : "19104" } 178 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45d" }, "occupation" : "other", "gender" : "M", "age" : "26", "id" : 178, "zip_code" : "49512" } 179 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45e" }, "occupation" : "entertainment", "gender" : "M", "age" : "15", "id" : 179, "zip_code" : "20755" } 180 | { "_id" : { "$oid" : "5666f321ba87840a40bcd45f" }, "occupation" : "administrator", "gender" : "F", "age" : "22", "id" : 180, "zip_code" : "60202" } 181 | { "_id" : { "$oid" : "5666f321ba87840a40bcd460" }, "occupation" : "executive", "gender" : "M", "age" : "26", "id" : 181, "zip_code" : "21218" } 182 | { "_id" : { "$oid" : "5666f321ba87840a40bcd461" }, "occupation" : "programmer", "gender" : "M", "age" : "36", "id" : 182, "zip_code" : "33884" } 183 | { "_id" : { "$oid" : "5666f321ba87840a40bcd462" }, "occupation" : "scientist", "gender" : "M", "age" : "33", "id" : 183, "zip_code" : "27708" } 184 | { "_id" : { "$oid" : "5666f321ba87840a40bcd463" }, "occupation" : "librarian", "gender" : "M", "age" : "37", "id" : 184, "zip_code" : "76013" } 185 | { "_id" : { "$oid" : "5666f321ba87840a40bcd464" }, "occupation" : "librarian", "gender" : "F", "age" : "53", "id" : 185, "zip_code" : "97403" } 186 | { "_id" : { "$oid" : "5666f321ba87840a40bcd465" }, "occupation" : "executive", "gender" : "F", "age" : "39", "id" : 186, "zip_code" : "00000" } 187 | { "_id" : { "$oid" : "5666f321ba87840a40bcd466" }, "occupation" : "educator", "gender" : "M", "age" : "26", "id" : 187, "zip_code" : "16801" } 188 | { "_id" : { "$oid" : "5666f321ba87840a40bcd467" }, "occupation" : "student", "gender" : "M", "age" : "42", "id" : 188, "zip_code" : "29440" } 189 | { "_id" : { "$oid" : "5666f321ba87840a40bcd468" }, "occupation" : "artist", "gender" : "M", "age" : "32", "id" : 189, "zip_code" : "95014" } 190 | { "_id" : { "$oid" : "5666f321ba87840a40bcd469" }, "occupation" : "administrator", "gender" : "M", "age" : "30", "id" : 190, "zip_code" : "95938" } 191 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46a" }, "occupation" : "administrator", "gender" : "M", "age" : "33", "id" : 191, "zip_code" : "95161" } 192 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46b" }, "occupation" : "educator", "gender" : "M", "age" : "42", "id" : 192, "zip_code" : "90840" } 193 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46c" }, "occupation" : "student", "gender" : "M", "age" : "29", "id" : 193, "zip_code" : "49931" } 194 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46d" }, "occupation" : "administrator", "gender" : "M", "age" : "38", "id" : 194, "zip_code" : "02154" } 195 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46e" }, "occupation" : "scientist", "gender" : "M", "age" : "42", "id" : 195, "zip_code" : "93555" } 196 | { "_id" : { "$oid" : "5666f321ba87840a40bcd46f" }, "occupation" : "writer", "gender" : "M", "age" : "49", "id" : 196, "zip_code" : "55105" } 197 | { "_id" : { "$oid" : "5666f321ba87840a40bcd470" }, "occupation" : "technician", "gender" : "M", "age" : "55", "id" : 197, "zip_code" : "75094" } 198 | { "_id" : { "$oid" : "5666f321ba87840a40bcd471" }, "occupation" : "student", "gender" : "F", "age" : "21", "id" : 198, "zip_code" : "55414" } 199 | { "_id" : { "$oid" : "5666f321ba87840a40bcd472" }, "occupation" : "writer", "gender" : "M", "age" : "30", "id" : 199, "zip_code" : "17604" } 200 | { "_id" : { "$oid" : "5666f321ba87840a40bcd473" }, "occupation" : "programmer", "gender" : "M", "age" : "40", "id" : 200, "zip_code" : "93402" } 201 | { "_id" : { "$oid" : "5666f321ba87840a40bcd474" }, "occupation" : "writer", "gender" : "M", "age" : "27", "id" : 201, "zip_code" : "E2A4H" } 202 | { "_id" : { "$oid" : "5666f321ba87840a40bcd475" }, "occupation" : "educator", "gender" : "F", "age" : "41", "id" : 202, "zip_code" : "60201" } 203 | { "_id" : { "$oid" : "5666f321ba87840a40bcd476" }, "occupation" : "student", "gender" : "F", "age" : "25", "id" : 203, "zip_code" : "32301" } 204 | { "_id" : { "$oid" : "5666f321ba87840a40bcd477" }, "occupation" : "librarian", "gender" : "F", "age" : "52", "id" : 204, "zip_code" : "10960" } 205 | { "_id" : { "$oid" : "5666f321ba87840a40bcd478" }, "occupation" : "lawyer", "gender" : "M", "age" : "47", "id" : 205, "zip_code" : "06371" } 206 | { "_id" : { "$oid" : "5666f321ba87840a40bcd479" }, "occupation" : "student", "gender" : "F", "age" : "14", "id" : 206, "zip_code" : "53115" } 207 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47a" }, "occupation" : "marketing", "gender" : "M", "age" : "39", "id" : 207, "zip_code" : "92037" } 208 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47b" }, "occupation" : "engineer", "gender" : "M", "age" : "43", "id" : 208, "zip_code" : "01720" } 209 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47c" }, "occupation" : "educator", "gender" : "F", "age" : "33", "id" : 209, "zip_code" : "85710" } 210 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47d" }, "occupation" : "engineer", "gender" : "M", "age" : "39", "id" : 210, "zip_code" : "03060" } 211 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47e" }, "occupation" : "salesman", "gender" : "M", "age" : "66", "id" : 211, "zip_code" : "32605" } 212 | { "_id" : { "$oid" : "5666f321ba87840a40bcd47f" }, "occupation" : "educator", "gender" : "F", "age" : "49", "id" : 212, "zip_code" : "61401" } 213 | { "_id" : { "$oid" : "5666f321ba87840a40bcd480" }, "occupation" : "executive", "gender" : "M", "age" : "33", "id" : 213, "zip_code" : "55345" } 214 | { "_id" : { "$oid" : "5666f321ba87840a40bcd481" }, "occupation" : "librarian", "gender" : "F", "age" : "26", "id" : 214, "zip_code" : "11231" } 215 | { "_id" : { "$oid" : "5666f321ba87840a40bcd482" }, "occupation" : "programmer", "gender" : "M", "age" : "35", "id" : 215, "zip_code" : "63033" } 216 | { "_id" : { "$oid" : "5666f321ba87840a40bcd483" }, "occupation" : "engineer", "gender" : "M", "age" : "22", "id" : 216, "zip_code" : "02215" } 217 | { "_id" : { "$oid" : "5666f321ba87840a40bcd484" }, "occupation" : "other", "gender" : "M", "age" : "22", "id" : 217, "zip_code" : "11727" } 218 | { "_id" : { "$oid" : "5666f321ba87840a40bcd485" }, "occupation" : "administrator", "gender" : "M", "age" : "37", "id" : 218, "zip_code" : "06513" } 219 | { "_id" : { "$oid" : "5666f321ba87840a40bcd486" }, "occupation" : "programmer", "gender" : "M", "age" : "32", "id" : 219, "zip_code" : "43212" } 220 | { "_id" : { "$oid" : "5666f321ba87840a40bcd487" }, "occupation" : "librarian", "gender" : "M", "age" : "30", "id" : 220, "zip_code" : "78205" } 221 | { "_id" : { "$oid" : "5666f321ba87840a40bcd488" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 221, "zip_code" : "20685" } 222 | { "_id" : { "$oid" : "5666f321ba87840a40bcd489" }, "occupation" : "programmer", "gender" : "M", "age" : "29", "id" : 222, "zip_code" : "27502" } 223 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48a" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 223, "zip_code" : "47906" } 224 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48b" }, "occupation" : "educator", "gender" : "F", "age" : "31", "id" : 224, "zip_code" : "43512" } 225 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48c" }, "occupation" : "administrator", "gender" : "F", "age" : "51", "id" : 225, "zip_code" : "58202" } 226 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48d" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 226, "zip_code" : "92103" } 227 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48e" }, "occupation" : "executive", "gender" : "M", "age" : "46", "id" : 227, "zip_code" : "60659" } 228 | { "_id" : { "$oid" : "5666f321ba87840a40bcd48f" }, "occupation" : "student", "gender" : "F", "age" : "21", "id" : 228, "zip_code" : "22003" } 229 | { "_id" : { "$oid" : "5666f321ba87840a40bcd490" }, "occupation" : "librarian", "gender" : "F", "age" : "29", "id" : 229, "zip_code" : "22903" } 230 | { "_id" : { "$oid" : "5666f321ba87840a40bcd491" }, "occupation" : "student", "gender" : "F", "age" : "28", "id" : 230, "zip_code" : "14476" } 231 | { "_id" : { "$oid" : "5666f321ba87840a40bcd492" }, "occupation" : "librarian", "gender" : "M", "age" : "48", "id" : 231, "zip_code" : "01080" } 232 | { "_id" : { "$oid" : "5666f321ba87840a40bcd493" }, "occupation" : "scientist", "gender" : "M", "age" : "45", "id" : 232, "zip_code" : "99709" } 233 | { "_id" : { "$oid" : "5666f321ba87840a40bcd494" }, "occupation" : "engineer", "gender" : "M", "age" : "38", "id" : 233, "zip_code" : "98682" } 234 | { "_id" : { "$oid" : "5666f321ba87840a40bcd495" }, "occupation" : "retired", "gender" : "M", "age" : "60", "id" : 234, "zip_code" : "94702" } 235 | { "_id" : { "$oid" : "5666f321ba87840a40bcd496" }, "occupation" : "educator", "gender" : "M", "age" : "37", "id" : 235, "zip_code" : "22973" } 236 | { "_id" : { "$oid" : "5666f321ba87840a40bcd497" }, "occupation" : "writer", "gender" : "F", "age" : "44", "id" : 236, "zip_code" : "53214" } 237 | { "_id" : { "$oid" : "5666f321ba87840a40bcd498" }, "occupation" : "administrator", "gender" : "M", "age" : "49", "id" : 237, "zip_code" : "63146" } 238 | { "_id" : { "$oid" : "5666f321ba87840a40bcd499" }, "occupation" : "administrator", "gender" : "F", "age" : "42", "id" : 238, "zip_code" : "44124" } 239 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49a" }, "occupation" : "artist", "gender" : "M", "age" : "39", "id" : 239, "zip_code" : "95628" } 240 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49b" }, "occupation" : "educator", "gender" : "F", "age" : "23", "id" : 240, "zip_code" : "20784" } 241 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49c" }, "occupation" : "student", "gender" : "F", "age" : "26", "id" : 241, "zip_code" : "20001" } 242 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49d" }, "occupation" : "educator", "gender" : "M", "age" : "33", "id" : 242, "zip_code" : "31404" } 243 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49e" }, "occupation" : "educator", "gender" : "M", "age" : "33", "id" : 243, "zip_code" : "60201" } 244 | { "_id" : { "$oid" : "5666f321ba87840a40bcd49f" }, "occupation" : "technician", "gender" : "M", "age" : "28", "id" : 244, "zip_code" : "80525" } 245 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a0" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 245, "zip_code" : "55109" } 246 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a1" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 246, "zip_code" : "28734" } 247 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a2" }, "occupation" : "engineer", "gender" : "M", "age" : "28", "id" : 247, "zip_code" : "20770" } 248 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a3" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 248, "zip_code" : "37235" } 249 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a4" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 249, "zip_code" : "84103" } 250 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a5" }, "occupation" : "executive", "gender" : "M", "age" : "29", "id" : 250, "zip_code" : "95110" } 251 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a6" }, "occupation" : "doctor", "gender" : "M", "age" : "28", "id" : 251, "zip_code" : "85032" } 252 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a7" }, "occupation" : "engineer", "gender" : "M", "age" : "42", "id" : 252, "zip_code" : "07733" } 253 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a8" }, "occupation" : "librarian", "gender" : "F", "age" : "26", "id" : 253, "zip_code" : "22903" } 254 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4a9" }, "occupation" : "educator", "gender" : "M", "age" : "44", "id" : 254, "zip_code" : "42647" } 255 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4aa" }, "occupation" : "entertainment", "gender" : "M", "age" : "23", "id" : 255, "zip_code" : "07029" } 256 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ab" }, "occupation" : "none", "gender" : "F", "age" : "35", "id" : 256, "zip_code" : "39042" } 257 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ac" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 257, "zip_code" : "77005" } 258 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ad" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 258, "zip_code" : "77801" } 259 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ae" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 259, "zip_code" : "48823" } 260 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4af" }, "occupation" : "artist", "gender" : "F", "age" : "40", "id" : 260, "zip_code" : "89801" } 261 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b0" }, "occupation" : "administrator", "gender" : "M", "age" : "28", "id" : 261, "zip_code" : "85202" } 262 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b1" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 262, "zip_code" : "78264" } 263 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b2" }, "occupation" : "programmer", "gender" : "M", "age" : "41", "id" : 263, "zip_code" : "55346" } 264 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b3" }, "occupation" : "writer", "gender" : "F", "age" : "36", "id" : 264, "zip_code" : "90064" } 265 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b4" }, "occupation" : "executive", "gender" : "M", "age" : "26", "id" : 265, "zip_code" : "84601" } 266 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b5" }, "occupation" : "administrator", "gender" : "F", "age" : "62", "id" : 266, "zip_code" : "78756" } 267 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b6" }, "occupation" : "engineer", "gender" : "M", "age" : "23", "id" : 267, "zip_code" : "83716" } 268 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b7" }, "occupation" : "engineer", "gender" : "M", "age" : "24", "id" : 268, "zip_code" : "19422" } 269 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b8" }, "occupation" : "librarian", "gender" : "F", "age" : "31", "id" : 269, "zip_code" : "43201" } 270 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4b9" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 270, "zip_code" : "63119" } 271 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ba" }, "occupation" : "engineer", "gender" : "M", "age" : "51", "id" : 271, "zip_code" : "22932" } 272 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4bb" }, "occupation" : "scientist", "gender" : "M", "age" : "33", "id" : 272, "zip_code" : "53706" } 273 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4bc" }, "occupation" : "other", "gender" : "F", "age" : "50", "id" : 273, "zip_code" : "10016" } 274 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4bd" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 274, "zip_code" : "55414" } 275 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4be" }, "occupation" : "engineer", "gender" : "M", "age" : "38", "id" : 275, "zip_code" : "92064" } 276 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4bf" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 276, "zip_code" : "95064" } 277 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c0" }, "occupation" : "administrator", "gender" : "F", "age" : "35", "id" : 277, "zip_code" : "55406" } 278 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c1" }, "occupation" : "librarian", "gender" : "F", "age" : "37", "id" : 278, "zip_code" : "30033" } 279 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c2" }, "occupation" : "programmer", "gender" : "M", "age" : "33", "id" : 279, "zip_code" : "85251" } 280 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c3" }, "occupation" : "librarian", "gender" : "F", "age" : "30", "id" : 280, "zip_code" : "22903" } 281 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c4" }, "occupation" : "student", "gender" : "F", "age" : "15", "id" : 281, "zip_code" : "06059" } 282 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c5" }, "occupation" : "administrator", "gender" : "M", "age" : "22", "id" : 282, "zip_code" : "20057" } 283 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c6" }, "occupation" : "programmer", "gender" : "M", "age" : "28", "id" : 283, "zip_code" : "55305" } 284 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c7" }, "occupation" : "executive", "gender" : "M", "age" : "40", "id" : 284, "zip_code" : "92629" } 285 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c8" }, "occupation" : "programmer", "gender" : "M", "age" : "25", "id" : 285, "zip_code" : "53713" } 286 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4c9" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 286, "zip_code" : "15217" } 287 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ca" }, "occupation" : "salesman", "gender" : "M", "age" : "21", "id" : 287, "zip_code" : "31211" } 288 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4cb" }, "occupation" : "marketing", "gender" : "M", "age" : "34", "id" : 288, "zip_code" : "23226" } 289 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4cc" }, "occupation" : "none", "gender" : "M", "age" : "11", "id" : 289, "zip_code" : "94619" } 290 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4cd" }, "occupation" : "engineer", "gender" : "M", "age" : "40", "id" : 290, "zip_code" : "93550" } 291 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ce" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 291, "zip_code" : "44106" } 292 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4cf" }, "occupation" : "programmer", "gender" : "F", "age" : "35", "id" : 292, "zip_code" : "94703" } 293 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d0" }, "occupation" : "writer", "gender" : "M", "age" : "24", "id" : 293, "zip_code" : "60804" } 294 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d1" }, "occupation" : "technician", "gender" : "M", "age" : "34", "id" : 294, "zip_code" : "92110" } 295 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d2" }, "occupation" : "educator", "gender" : "M", "age" : "31", "id" : 295, "zip_code" : "50325" } 296 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d3" }, "occupation" : "administrator", "gender" : "F", "age" : "43", "id" : 296, "zip_code" : "16803" } 297 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d4" }, "occupation" : "educator", "gender" : "F", "age" : "29", "id" : 297, "zip_code" : "98103" } 298 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d5" }, "occupation" : "executive", "gender" : "M", "age" : "44", "id" : 298, "zip_code" : "01581" } 299 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d6" }, "occupation" : "doctor", "gender" : "M", "age" : "29", "id" : 299, "zip_code" : "63108" } 300 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d7" }, "occupation" : "programmer", "gender" : "F", "age" : "26", "id" : 300, "zip_code" : "55106" } 301 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d8" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 301, "zip_code" : "55439" } 302 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4d9" }, "occupation" : "educator", "gender" : "M", "age" : "42", "id" : 302, "zip_code" : "77904" } 303 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4da" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 303, "zip_code" : "14853" } 304 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4db" }, "occupation" : "student", "gender" : "F", "age" : "22", "id" : 304, "zip_code" : "71701" } 305 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4dc" }, "occupation" : "programmer", "gender" : "M", "age" : "23", "id" : 305, "zip_code" : "94086" } 306 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4dd" }, "occupation" : "other", "gender" : "M", "age" : "45", "id" : 306, "zip_code" : "73132" } 307 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4de" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 307, "zip_code" : "55454" } 308 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4df" }, "occupation" : "retired", "gender" : "M", "age" : "60", "id" : 308, "zip_code" : "95076" } 309 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e0" }, "occupation" : "scientist", "gender" : "M", "age" : "40", "id" : 309, "zip_code" : "70802" } 310 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e1" }, "occupation" : "educator", "gender" : "M", "age" : "37", "id" : 310, "zip_code" : "91711" } 311 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e2" }, "occupation" : "technician", "gender" : "M", "age" : "32", "id" : 311, "zip_code" : "73071" } 312 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e3" }, "occupation" : "other", "gender" : "M", "age" : "48", "id" : 312, "zip_code" : "02110" } 313 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e4" }, "occupation" : "marketing", "gender" : "M", "age" : "41", "id" : 313, "zip_code" : "60035" } 314 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e5" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 314, "zip_code" : "08043" } 315 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e6" }, "occupation" : "educator", "gender" : "M", "age" : "31", "id" : 315, "zip_code" : "18301" } 316 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e7" }, "occupation" : "other", "gender" : "F", "age" : "43", "id" : 316, "zip_code" : "77009" } 317 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e8" }, "occupation" : "administrator", "gender" : "M", "age" : "22", "id" : 317, "zip_code" : "13210" } 318 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4e9" }, "occupation" : "retired", "gender" : "M", "age" : "65", "id" : 318, "zip_code" : "06518" } 319 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ea" }, "occupation" : "programmer", "gender" : "M", "age" : "38", "id" : 319, "zip_code" : "22030" } 320 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4eb" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 320, "zip_code" : "24060" } 321 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ec" }, "occupation" : "educator", "gender" : "F", "age" : "49", "id" : 321, "zip_code" : "55413" } 322 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ed" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 322, "zip_code" : "50613" } 323 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ee" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 323, "zip_code" : "19149" } 324 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ef" }, "occupation" : "student", "gender" : "F", "age" : "21", "id" : 324, "zip_code" : "02176" } 325 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f0" }, "occupation" : "technician", "gender" : "M", "age" : "48", "id" : 325, "zip_code" : "02139" } 326 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f1" }, "occupation" : "administrator", "gender" : "M", "age" : "41", "id" : 326, "zip_code" : "15235" } 327 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f2" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 327, "zip_code" : "11101" } 328 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f3" }, "occupation" : "administrator", "gender" : "M", "age" : "51", "id" : 328, "zip_code" : "06779" } 329 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f4" }, "occupation" : "educator", "gender" : "M", "age" : "48", "id" : 329, "zip_code" : "01720" } 330 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f5" }, "occupation" : "educator", "gender" : "F", "age" : "35", "id" : 330, "zip_code" : "33884" } 331 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f6" }, "occupation" : "entertainment", "gender" : "M", "age" : "33", "id" : 331, "zip_code" : "91344" } 332 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f7" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 332, "zip_code" : "40504" } 333 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f8" }, "occupation" : "other", "gender" : "M", "age" : "47", "id" : 333, "zip_code" : "V0R2M" } 334 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4f9" }, "occupation" : "librarian", "gender" : "M", "age" : "32", "id" : 334, "zip_code" : "30002" } 335 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4fa" }, "occupation" : "executive", "gender" : "M", "age" : "45", "id" : 335, "zip_code" : "33775" } 336 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4fb" }, "occupation" : "salesman", "gender" : "M", "age" : "23", "id" : 336, "zip_code" : "42101" } 337 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4fc" }, "occupation" : "scientist", "gender" : "M", "age" : "37", "id" : 337, "zip_code" : "10522" } 338 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4fd" }, "occupation" : "librarian", "gender" : "F", "age" : "39", "id" : 338, "zip_code" : "59717" } 339 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4fe" }, "occupation" : "lawyer", "gender" : "M", "age" : "35", "id" : 339, "zip_code" : "37901" } 340 | { "_id" : { "$oid" : "5666f321ba87840a40bcd4ff" }, "occupation" : "engineer", "gender" : "M", "age" : "46", "id" : 340, "zip_code" : "80123" } 341 | { "_id" : { "$oid" : "5666f321ba87840a40bcd500" }, "occupation" : "student", "gender" : "F", "age" : "17", "id" : 341, "zip_code" : "44405" } 342 | { "_id" : { "$oid" : "5666f321ba87840a40bcd501" }, "occupation" : "other", "gender" : "F", "age" : "25", "id" : 342, "zip_code" : "98006" } 343 | { "_id" : { "$oid" : "5666f321ba87840a40bcd502" }, "occupation" : "engineer", "gender" : "M", "age" : "43", "id" : 343, "zip_code" : "30093" } 344 | { "_id" : { "$oid" : "5666f321ba87840a40bcd503" }, "occupation" : "librarian", "gender" : "F", "age" : "30", "id" : 344, "zip_code" : "94117" } 345 | { "_id" : { "$oid" : "5666f321ba87840a40bcd504" }, "occupation" : "librarian", "gender" : "F", "age" : "28", "id" : 345, "zip_code" : "94143" } 346 | { "_id" : { "$oid" : "5666f321ba87840a40bcd505" }, "occupation" : "other", "gender" : "M", "age" : "34", "id" : 346, "zip_code" : "76059" } 347 | { "_id" : { "$oid" : "5666f321ba87840a40bcd506" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 347, "zip_code" : "90210" } 348 | { "_id" : { "$oid" : "5666f321ba87840a40bcd507" }, "occupation" : "student", "gender" : "F", "age" : "24", "id" : 348, "zip_code" : "45660" } 349 | { "_id" : { "$oid" : "5666f321ba87840a40bcd508" }, "occupation" : "retired", "gender" : "M", "age" : "68", "id" : 349, "zip_code" : "61455" } 350 | { "_id" : { "$oid" : "5666f321ba87840a40bcd509" }, "occupation" : "student", "gender" : "M", "age" : "32", "id" : 350, "zip_code" : "97301" } 351 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50a" }, "occupation" : "educator", "gender" : "M", "age" : "61", "id" : 351, "zip_code" : "49938" } 352 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50b" }, "occupation" : "programmer", "gender" : "F", "age" : "37", "id" : 352, "zip_code" : "55105" } 353 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50c" }, "occupation" : "scientist", "gender" : "M", "age" : "25", "id" : 353, "zip_code" : "28480" } 354 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50d" }, "occupation" : "librarian", "gender" : "F", "age" : "29", "id" : 354, "zip_code" : "48197" } 355 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50e" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 355, "zip_code" : "60135" } 356 | { "_id" : { "$oid" : "5666f321ba87840a40bcd50f" }, "occupation" : "homemaker", "gender" : "F", "age" : "32", "id" : 356, "zip_code" : "92688" } 357 | { "_id" : { "$oid" : "5666f321ba87840a40bcd510" }, "occupation" : "executive", "gender" : "M", "age" : "26", "id" : 357, "zip_code" : "98133" } 358 | { "_id" : { "$oid" : "5666f321ba87840a40bcd511" }, "occupation" : "educator", "gender" : "M", "age" : "40", "id" : 358, "zip_code" : "10022" } 359 | { "_id" : { "$oid" : "5666f321ba87840a40bcd512" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 359, "zip_code" : "61801" } 360 | { "_id" : { "$oid" : "5666f321ba87840a40bcd513" }, "occupation" : "other", "gender" : "M", "age" : "51", "id" : 360, "zip_code" : "98027" } 361 | { "_id" : { "$oid" : "5666f321ba87840a40bcd514" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 361, "zip_code" : "44074" } 362 | { "_id" : { "$oid" : "5666f321ba87840a40bcd515" }, "occupation" : "homemaker", "gender" : "F", "age" : "35", "id" : 362, "zip_code" : "85233" } 363 | { "_id" : { "$oid" : "5666f321ba87840a40bcd516" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 363, "zip_code" : "87501" } 364 | { "_id" : { "$oid" : "5666f321ba87840a40bcd517" }, "occupation" : "engineer", "gender" : "M", "age" : "63", "id" : 364, "zip_code" : "01810" } 365 | { "_id" : { "$oid" : "5666f321ba87840a40bcd518" }, "occupation" : "lawyer", "gender" : "M", "age" : "29", "id" : 365, "zip_code" : "20009" } 366 | { "_id" : { "$oid" : "5666f321ba87840a40bcd519" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 366, "zip_code" : "50670" } 367 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51a" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 367, "zip_code" : "37411" } 368 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51b" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 368, "zip_code" : "92113" } 369 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51c" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 369, "zip_code" : "91335" } 370 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51d" }, "occupation" : "writer", "gender" : "M", "age" : "52", "id" : 370, "zip_code" : "08534" } 371 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51e" }, "occupation" : "engineer", "gender" : "M", "age" : "36", "id" : 371, "zip_code" : "99206" } 372 | { "_id" : { "$oid" : "5666f321ba87840a40bcd51f" }, "occupation" : "student", "gender" : "F", "age" : "25", "id" : 372, "zip_code" : "66046" } 373 | { "_id" : { "$oid" : "5666f321ba87840a40bcd520" }, "occupation" : "other", "gender" : "F", "age" : "24", "id" : 373, "zip_code" : "55116" } 374 | { "_id" : { "$oid" : "5666f321ba87840a40bcd521" }, "occupation" : "executive", "gender" : "M", "age" : "36", "id" : 374, "zip_code" : "78746" } 375 | { "_id" : { "$oid" : "5666f321ba87840a40bcd522" }, "occupation" : "entertainment", "gender" : "M", "age" : "17", "id" : 375, "zip_code" : "37777" } 376 | { "_id" : { "$oid" : "5666f321ba87840a40bcd523" }, "occupation" : "other", "gender" : "F", "age" : "28", "id" : 376, "zip_code" : "10010" } 377 | { "_id" : { "$oid" : "5666f321ba87840a40bcd524" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 377, "zip_code" : "18015" } 378 | { "_id" : { "$oid" : "5666f321ba87840a40bcd525" }, "occupation" : "student", "gender" : "M", "age" : "35", "id" : 378, "zip_code" : "02859" } 379 | { "_id" : { "$oid" : "5666f321ba87840a40bcd526" }, "occupation" : "programmer", "gender" : "M", "age" : "44", "id" : 379, "zip_code" : "98117" } 380 | { "_id" : { "$oid" : "5666f321ba87840a40bcd527" }, "occupation" : "engineer", "gender" : "M", "age" : "32", "id" : 380, "zip_code" : "55117" } 381 | { "_id" : { "$oid" : "5666f321ba87840a40bcd528" }, "occupation" : "artist", "gender" : "M", "age" : "33", "id" : 381, "zip_code" : "94608" } 382 | { "_id" : { "$oid" : "5666f321ba87840a40bcd529" }, "occupation" : "engineer", "gender" : "M", "age" : "45", "id" : 382, "zip_code" : "01824" } 383 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52a" }, "occupation" : "administrator", "gender" : "M", "age" : "42", "id" : 383, "zip_code" : "75204" } 384 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52b" }, "occupation" : "programmer", "gender" : "M", "age" : "52", "id" : 384, "zip_code" : "45218" } 385 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52c" }, "occupation" : "writer", "gender" : "M", "age" : "36", "id" : 385, "zip_code" : "10003" } 386 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52d" }, "occupation" : "salesman", "gender" : "M", "age" : "36", "id" : 386, "zip_code" : "43221" } 387 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52e" }, "occupation" : "entertainment", "gender" : "M", "age" : "33", "id" : 387, "zip_code" : "37412" } 388 | { "_id" : { "$oid" : "5666f321ba87840a40bcd52f" }, "occupation" : "other", "gender" : "M", "age" : "31", "id" : 388, "zip_code" : "36106" } 389 | { "_id" : { "$oid" : "5666f321ba87840a40bcd530" }, "occupation" : "writer", "gender" : "F", "age" : "44", "id" : 389, "zip_code" : "83702" } 390 | { "_id" : { "$oid" : "5666f321ba87840a40bcd531" }, "occupation" : "writer", "gender" : "F", "age" : "42", "id" : 390, "zip_code" : "85016" } 391 | { "_id" : { "$oid" : "5666f321ba87840a40bcd532" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 391, "zip_code" : "84604" } 392 | { "_id" : { "$oid" : "5666f321ba87840a40bcd533" }, "occupation" : "writer", "gender" : "M", "age" : "52", "id" : 392, "zip_code" : "59801" } 393 | { "_id" : { "$oid" : "5666f321ba87840a40bcd534" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 393, "zip_code" : "83686" } 394 | { "_id" : { "$oid" : "5666f321ba87840a40bcd535" }, "occupation" : "administrator", "gender" : "M", "age" : "25", "id" : 394, "zip_code" : "96819" } 395 | { "_id" : { "$oid" : "5666f321ba87840a40bcd536" }, "occupation" : "other", "gender" : "M", "age" : "43", "id" : 395, "zip_code" : "44092" } 396 | { "_id" : { "$oid" : "5666f321ba87840a40bcd537" }, "occupation" : "engineer", "gender" : "M", "age" : "57", "id" : 396, "zip_code" : "94551" } 397 | { "_id" : { "$oid" : "5666f321ba87840a40bcd538" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 397, "zip_code" : "27514" } 398 | { "_id" : { "$oid" : "5666f321ba87840a40bcd539" }, "occupation" : "other", "gender" : "M", "age" : "40", "id" : 398, "zip_code" : "60008" } 399 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53a" }, "occupation" : "other", "gender" : "M", "age" : "25", "id" : 399, "zip_code" : "92374" } 400 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53b" }, "occupation" : "administrator", "gender" : "F", "age" : "33", "id" : 400, "zip_code" : "78213" } 401 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53c" }, "occupation" : "healthcare", "gender" : "F", "age" : "46", "id" : 401, "zip_code" : "84107" } 402 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53d" }, "occupation" : "engineer", "gender" : "M", "age" : "30", "id" : 402, "zip_code" : "95129" } 403 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53e" }, "occupation" : "other", "gender" : "M", "age" : "37", "id" : 403, "zip_code" : "06811" } 404 | { "_id" : { "$oid" : "5666f321ba87840a40bcd53f" }, "occupation" : "programmer", "gender" : "F", "age" : "29", "id" : 404, "zip_code" : "55108" } 405 | { "_id" : { "$oid" : "5666f321ba87840a40bcd540" }, "occupation" : "healthcare", "gender" : "F", "age" : "22", "id" : 405, "zip_code" : "10019" } 406 | { "_id" : { "$oid" : "5666f321ba87840a40bcd541" }, "occupation" : "educator", "gender" : "M", "age" : "52", "id" : 406, "zip_code" : "93109" } 407 | { "_id" : { "$oid" : "5666f321ba87840a40bcd542" }, "occupation" : "engineer", "gender" : "M", "age" : "29", "id" : 407, "zip_code" : "03261" } 408 | { "_id" : { "$oid" : "5666f321ba87840a40bcd543" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 408, "zip_code" : "61755" } 409 | { "_id" : { "$oid" : "5666f321ba87840a40bcd544" }, "occupation" : "administrator", "gender" : "M", "age" : "48", "id" : 409, "zip_code" : "98225" } 410 | { "_id" : { "$oid" : "5666f321ba87840a40bcd545" }, "occupation" : "artist", "gender" : "F", "age" : "30", "id" : 410, "zip_code" : "94025" } 411 | { "_id" : { "$oid" : "5666f321ba87840a40bcd546" }, "occupation" : "educator", "gender" : "M", "age" : "34", "id" : 411, "zip_code" : "44691" } 412 | { "_id" : { "$oid" : "5666f321ba87840a40bcd547" }, "occupation" : "educator", "gender" : "M", "age" : "25", "id" : 412, "zip_code" : "15222" } 413 | { "_id" : { "$oid" : "5666f321ba87840a40bcd548" }, "occupation" : "educator", "gender" : "M", "age" : "55", "id" : 413, "zip_code" : "78212" } 414 | { "_id" : { "$oid" : "5666f321ba87840a40bcd549" }, "occupation" : "programmer", "gender" : "M", "age" : "24", "id" : 414, "zip_code" : "38115" } 415 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54a" }, "occupation" : "educator", "gender" : "M", "age" : "39", "id" : 415, "zip_code" : "85711" } 416 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54b" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 416, "zip_code" : "92626" } 417 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54c" }, "occupation" : "other", "gender" : "F", "age" : "27", "id" : 417, "zip_code" : "48103" } 418 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54d" }, "occupation" : "none", "gender" : "F", "age" : "55", "id" : 418, "zip_code" : "21206" } 419 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54e" }, "occupation" : "lawyer", "gender" : "M", "age" : "37", "id" : 419, "zip_code" : "43215" } 420 | { "_id" : { "$oid" : "5666f321ba87840a40bcd54f" }, "occupation" : "educator", "gender" : "M", "age" : "53", "id" : 420, "zip_code" : "02140" } 421 | { "_id" : { "$oid" : "5666f321ba87840a40bcd550" }, "occupation" : "programmer", "gender" : "F", "age" : "38", "id" : 421, "zip_code" : "55105" } 422 | { "_id" : { "$oid" : "5666f321ba87840a40bcd551" }, "occupation" : "entertainment", "gender" : "M", "age" : "26", "id" : 422, "zip_code" : "94533" } 423 | { "_id" : { "$oid" : "5666f321ba87840a40bcd552" }, "occupation" : "other", "gender" : "M", "age" : "64", "id" : 423, "zip_code" : "91606" } 424 | { "_id" : { "$oid" : "5666f321ba87840a40bcd553" }, "occupation" : "marketing", "gender" : "F", "age" : "36", "id" : 424, "zip_code" : "55422" } 425 | { "_id" : { "$oid" : "5666f321ba87840a40bcd554" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 425, "zip_code" : "58644" } 426 | { "_id" : { "$oid" : "5666f321ba87840a40bcd555" }, "occupation" : "educator", "gender" : "M", "age" : "55", "id" : 426, "zip_code" : "01602" } 427 | { "_id" : { "$oid" : "5666f321ba87840a40bcd556" }, "occupation" : "doctor", "gender" : "M", "age" : "51", "id" : 427, "zip_code" : "85258" } 428 | { "_id" : { "$oid" : "5666f321ba87840a40bcd557" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 428, "zip_code" : "55414" } 429 | { "_id" : { "$oid" : "5666f321ba87840a40bcd558" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 429, "zip_code" : "29205" } 430 | { "_id" : { "$oid" : "5666f321ba87840a40bcd559" }, "occupation" : "scientist", "gender" : "M", "age" : "38", "id" : 430, "zip_code" : "98199" } 431 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55a" }, "occupation" : "marketing", "gender" : "M", "age" : "24", "id" : 431, "zip_code" : "92629" } 432 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55b" }, "occupation" : "entertainment", "gender" : "M", "age" : "22", "id" : 432, "zip_code" : "50311" } 433 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55c" }, "occupation" : "artist", "gender" : "M", "age" : "27", "id" : 433, "zip_code" : "11211" } 434 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55d" }, "occupation" : "student", "gender" : "F", "age" : "16", "id" : 434, "zip_code" : "49705" } 435 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55e" }, "occupation" : "engineer", "gender" : "M", "age" : "24", "id" : 435, "zip_code" : "60007" } 436 | { "_id" : { "$oid" : "5666f321ba87840a40bcd55f" }, "occupation" : "administrator", "gender" : "F", "age" : "30", "id" : 436, "zip_code" : "17345" } 437 | { "_id" : { "$oid" : "5666f321ba87840a40bcd560" }, "occupation" : "other", "gender" : "F", "age" : "27", "id" : 437, "zip_code" : "20009" } 438 | { "_id" : { "$oid" : "5666f321ba87840a40bcd561" }, "occupation" : "administrator", "gender" : "F", "age" : "51", "id" : 438, "zip_code" : "43204" } 439 | { "_id" : { "$oid" : "5666f321ba87840a40bcd562" }, "occupation" : "administrator", "gender" : "F", "age" : "23", "id" : 439, "zip_code" : "20817" } 440 | { "_id" : { "$oid" : "5666f321ba87840a40bcd563" }, "occupation" : "other", "gender" : "M", "age" : "30", "id" : 440, "zip_code" : "48076" } 441 | { "_id" : { "$oid" : "5666f321ba87840a40bcd564" }, "occupation" : "technician", "gender" : "M", "age" : "50", "id" : 441, "zip_code" : "55013" } 442 | { "_id" : { "$oid" : "5666f321ba87840a40bcd565" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 442, "zip_code" : "85282" } 443 | { "_id" : { "$oid" : "5666f321ba87840a40bcd566" }, "occupation" : "salesman", "gender" : "M", "age" : "35", "id" : 443, "zip_code" : "33308" } 444 | { "_id" : { "$oid" : "5666f321ba87840a40bcd567" }, "occupation" : "lawyer", "gender" : "F", "age" : "51", "id" : 444, "zip_code" : "53202" } 445 | { "_id" : { "$oid" : "5666f321ba87840a40bcd568" }, "occupation" : "writer", "gender" : "M", "age" : "21", "id" : 445, "zip_code" : "92653" } 446 | { "_id" : { "$oid" : "5666f321ba87840a40bcd569" }, "occupation" : "educator", "gender" : "M", "age" : "57", "id" : 446, "zip_code" : "60201" } 447 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56a" }, "occupation" : "administrator", "gender" : "M", "age" : "30", "id" : 447, "zip_code" : "55113" } 448 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56b" }, "occupation" : "entertainment", "gender" : "M", "age" : "23", "id" : 448, "zip_code" : "10021" } 449 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56c" }, "occupation" : "librarian", "gender" : "M", "age" : "23", "id" : 449, "zip_code" : "55021" } 450 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56d" }, "occupation" : "educator", "gender" : "F", "age" : "35", "id" : 450, "zip_code" : "11758" } 451 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56e" }, "occupation" : "student", "gender" : "M", "age" : "16", "id" : 451, "zip_code" : "48446" } 452 | { "_id" : { "$oid" : "5666f321ba87840a40bcd56f" }, "occupation" : "administrator", "gender" : "M", "age" : "35", "id" : 452, "zip_code" : "28018" } 453 | { "_id" : { "$oid" : "5666f321ba87840a40bcd570" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 453, "zip_code" : "06333" } 454 | { "_id" : { "$oid" : "5666f321ba87840a40bcd571" }, "occupation" : "other", "gender" : "M", "age" : "57", "id" : 454, "zip_code" : "97330" } 455 | { "_id" : { "$oid" : "5666f321ba87840a40bcd572" }, "occupation" : "administrator", "gender" : "M", "age" : "48", "id" : 455, "zip_code" : "83709" } 456 | { "_id" : { "$oid" : "5666f321ba87840a40bcd573" }, "occupation" : "technician", "gender" : "M", "age" : "24", "id" : 456, "zip_code" : "31820" } 457 | { "_id" : { "$oid" : "5666f321ba87840a40bcd574" }, "occupation" : "salesman", "gender" : "F", "age" : "33", "id" : 457, "zip_code" : "30011" } 458 | { "_id" : { "$oid" : "5666f321ba87840a40bcd575" }, "occupation" : "technician", "gender" : "M", "age" : "47", "id" : 458, "zip_code" : "Y1A6B" } 459 | { "_id" : { "$oid" : "5666f321ba87840a40bcd576" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 459, "zip_code" : "29201" } 460 | { "_id" : { "$oid" : "5666f321ba87840a40bcd577" }, "occupation" : "other", "gender" : "F", "age" : "44", "id" : 460, "zip_code" : "60630" } 461 | { "_id" : { "$oid" : "5666f321ba87840a40bcd578" }, "occupation" : "student", "gender" : "M", "age" : "15", "id" : 461, "zip_code" : "98102" } 462 | { "_id" : { "$oid" : "5666f321ba87840a40bcd579" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 462, "zip_code" : "02918" } 463 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57a" }, "occupation" : "healthcare", "gender" : "F", "age" : "48", "id" : 463, "zip_code" : "75218" } 464 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57b" }, "occupation" : "writer", "gender" : "M", "age" : "60", "id" : 464, "zip_code" : "94583" } 465 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57c" }, "occupation" : "other", "gender" : "M", "age" : "32", "id" : 465, "zip_code" : "05001" } 466 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57d" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 466, "zip_code" : "90804" } 467 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57e" }, "occupation" : "engineer", "gender" : "M", "age" : "29", "id" : 467, "zip_code" : "91201" } 468 | { "_id" : { "$oid" : "5666f321ba87840a40bcd57f" }, "occupation" : "engineer", "gender" : "M", "age" : "28", "id" : 468, "zip_code" : "02341" } 469 | { "_id" : { "$oid" : "5666f321ba87840a40bcd580" }, "occupation" : "educator", "gender" : "M", "age" : "60", "id" : 469, "zip_code" : "78628" } 470 | { "_id" : { "$oid" : "5666f321ba87840a40bcd581" }, "occupation" : "programmer", "gender" : "M", "age" : "24", "id" : 470, "zip_code" : "10021" } 471 | { "_id" : { "$oid" : "5666f321ba87840a40bcd582" }, "occupation" : "student", "gender" : "M", "age" : "10", "id" : 471, "zip_code" : "77459" } 472 | { "_id" : { "$oid" : "5666f321ba87840a40bcd583" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 472, "zip_code" : "87544" } 473 | { "_id" : { "$oid" : "5666f321ba87840a40bcd584" }, "occupation" : "student", "gender" : "M", "age" : "29", "id" : 473, "zip_code" : "94708" } 474 | { "_id" : { "$oid" : "5666f321ba87840a40bcd585" }, "occupation" : "executive", "gender" : "M", "age" : "51", "id" : 474, "zip_code" : "93711" } 475 | { "_id" : { "$oid" : "5666f321ba87840a40bcd586" }, "occupation" : "programmer", "gender" : "M", "age" : "30", "id" : 475, "zip_code" : "75230" } 476 | { "_id" : { "$oid" : "5666f321ba87840a40bcd587" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 476, "zip_code" : "60440" } 477 | { "_id" : { "$oid" : "5666f321ba87840a40bcd588" }, "occupation" : "student", "gender" : "F", "age" : "23", "id" : 477, "zip_code" : "02125" } 478 | { "_id" : { "$oid" : "5666f321ba87840a40bcd589" }, "occupation" : "other", "gender" : "M", "age" : "29", "id" : 478, "zip_code" : "10019" } 479 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58a" }, "occupation" : "educator", "gender" : "M", "age" : "30", "id" : 479, "zip_code" : "55409" } 480 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58b" }, "occupation" : "retired", "gender" : "M", "age" : "57", "id" : 480, "zip_code" : "98257" } 481 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58c" }, "occupation" : "retired", "gender" : "M", "age" : "73", "id" : 481, "zip_code" : "37771" } 482 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58d" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 482, "zip_code" : "40256" } 483 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58e" }, "occupation" : "scientist", "gender" : "M", "age" : "29", "id" : 483, "zip_code" : "43212" } 484 | { "_id" : { "$oid" : "5666f321ba87840a40bcd58f" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 484, "zip_code" : "21208" } 485 | { "_id" : { "$oid" : "5666f321ba87840a40bcd590" }, "occupation" : "educator", "gender" : "F", "age" : "44", "id" : 485, "zip_code" : "95821" } 486 | { "_id" : { "$oid" : "5666f321ba87840a40bcd591" }, "occupation" : "educator", "gender" : "M", "age" : "39", "id" : 486, "zip_code" : "93101" } 487 | { "_id" : { "$oid" : "5666f321ba87840a40bcd592" }, "occupation" : "engineer", "gender" : "M", "age" : "22", "id" : 487, "zip_code" : "92121" } 488 | { "_id" : { "$oid" : "5666f321ba87840a40bcd593" }, "occupation" : "technician", "gender" : "M", "age" : "48", "id" : 488, "zip_code" : "21012" } 489 | { "_id" : { "$oid" : "5666f321ba87840a40bcd594" }, "occupation" : "other", "gender" : "M", "age" : "55", "id" : 489, "zip_code" : "45218" } 490 | { "_id" : { "$oid" : "5666f321ba87840a40bcd595" }, "occupation" : "artist", "gender" : "F", "age" : "29", "id" : 490, "zip_code" : "V5A2B" } 491 | { "_id" : { "$oid" : "5666f321ba87840a40bcd596" }, "occupation" : "writer", "gender" : "F", "age" : "43", "id" : 491, "zip_code" : "53711" } 492 | { "_id" : { "$oid" : "5666f321ba87840a40bcd597" }, "occupation" : "educator", "gender" : "M", "age" : "57", "id" : 492, "zip_code" : "94618" } 493 | { "_id" : { "$oid" : "5666f321ba87840a40bcd598" }, "occupation" : "engineer", "gender" : "M", "age" : "22", "id" : 493, "zip_code" : "60090" } 494 | { "_id" : { "$oid" : "5666f321ba87840a40bcd599" }, "occupation" : "administrator", "gender" : "F", "age" : "38", "id" : 494, "zip_code" : "49428" } 495 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59a" }, "occupation" : "engineer", "gender" : "M", "age" : "29", "id" : 495, "zip_code" : "03052" } 496 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59b" }, "occupation" : "student", "gender" : "F", "age" : "21", "id" : 496, "zip_code" : "55414" } 497 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59c" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 497, "zip_code" : "50112" } 498 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59d" }, "occupation" : "writer", "gender" : "M", "age" : "26", "id" : 498, "zip_code" : "55408" } 499 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59e" }, "occupation" : "programmer", "gender" : "M", "age" : "42", "id" : 499, "zip_code" : "75006" } 500 | { "_id" : { "$oid" : "5666f321ba87840a40bcd59f" }, "occupation" : "administrator", "gender" : "M", "age" : "28", "id" : 500, "zip_code" : "94305" } 501 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a0" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 501, "zip_code" : "10025" } 502 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a1" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 502, "zip_code" : "23092" } 503 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a2" }, "occupation" : "writer", "gender" : "F", "age" : "50", "id" : 503, "zip_code" : "27514" } 504 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a3" }, "occupation" : "writer", "gender" : "F", "age" : "40", "id" : 504, "zip_code" : "92115" } 505 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a4" }, "occupation" : "other", "gender" : "F", "age" : "27", "id" : 505, "zip_code" : "20657" } 506 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a5" }, "occupation" : "programmer", "gender" : "M", "age" : "46", "id" : 506, "zip_code" : "03869" } 507 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a6" }, "occupation" : "writer", "gender" : "F", "age" : "18", "id" : 507, "zip_code" : "28450" } 508 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a7" }, "occupation" : "marketing", "gender" : "M", "age" : "27", "id" : 508, "zip_code" : "19382" } 509 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a8" }, "occupation" : "administrator", "gender" : "M", "age" : "23", "id" : 509, "zip_code" : "10011" } 510 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5a9" }, "occupation" : "other", "gender" : "M", "age" : "34", "id" : 510, "zip_code" : "98038" } 511 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5aa" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 511, "zip_code" : "21250" } 512 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ab" }, "occupation" : "other", "gender" : "M", "age" : "29", "id" : 512, "zip_code" : "20090" } 513 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ac" }, "occupation" : "administrator", "gender" : "M", "age" : "43", "id" : 513, "zip_code" : "26241" } 514 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ad" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 514, "zip_code" : "20707" } 515 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ae" }, "occupation" : "marketing", "gender" : "M", "age" : "53", "id" : 515, "zip_code" : "49508" } 516 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5af" }, "occupation" : "librarian", "gender" : "F", "age" : "53", "id" : 516, "zip_code" : "10021" } 517 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b0" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 517, "zip_code" : "55454" } 518 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b1" }, "occupation" : "writer", "gender" : "F", "age" : "49", "id" : 518, "zip_code" : "99709" } 519 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b2" }, "occupation" : "other", "gender" : "M", "age" : "22", "id" : 519, "zip_code" : "55320" } 520 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b3" }, "occupation" : "healthcare", "gender" : "M", "age" : "62", "id" : 520, "zip_code" : "12603" } 521 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b4" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 521, "zip_code" : "02146" } 522 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b5" }, "occupation" : "engineer", "gender" : "M", "age" : "36", "id" : 522, "zip_code" : "55443" } 523 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b6" }, "occupation" : "administrator", "gender" : "F", "age" : "50", "id" : 523, "zip_code" : "04102" } 524 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b7" }, "occupation" : "educator", "gender" : "M", "age" : "56", "id" : 524, "zip_code" : "02159" } 525 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b8" }, "occupation" : "administrator", "gender" : "F", "age" : "27", "id" : 525, "zip_code" : "19711" } 526 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5b9" }, "occupation" : "marketing", "gender" : "M", "age" : "30", "id" : 526, "zip_code" : "97124" } 527 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ba" }, "occupation" : "librarian", "gender" : "M", "age" : "33", "id" : 527, "zip_code" : "12180" } 528 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5bb" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 528, "zip_code" : "55104" } 529 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5bc" }, "occupation" : "administrator", "gender" : "F", "age" : "47", "id" : 529, "zip_code" : "44224" } 530 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5bd" }, "occupation" : "engineer", "gender" : "M", "age" : "29", "id" : 530, "zip_code" : "94040" } 531 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5be" }, "occupation" : "salesman", "gender" : "F", "age" : "30", "id" : 531, "zip_code" : "97408" } 532 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5bf" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 532, "zip_code" : "92705" } 533 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c0" }, "occupation" : "librarian", "gender" : "M", "age" : "43", "id" : 533, "zip_code" : "02324" } 534 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c1" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 534, "zip_code" : "05464" } 535 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c2" }, "occupation" : "educator", "gender" : "F", "age" : "45", "id" : 535, "zip_code" : "80302" } 536 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c3" }, "occupation" : "engineer", "gender" : "M", "age" : "38", "id" : 536, "zip_code" : "30078" } 537 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c4" }, "occupation" : "engineer", "gender" : "M", "age" : "36", "id" : 537, "zip_code" : "22902" } 538 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c5" }, "occupation" : "scientist", "gender" : "M", "age" : "31", "id" : 538, "zip_code" : "21010" } 539 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c6" }, "occupation" : "administrator", "gender" : "F", "age" : "53", "id" : 539, "zip_code" : "80303" } 540 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c7" }, "occupation" : "engineer", "gender" : "M", "age" : "28", "id" : 540, "zip_code" : "91201" } 541 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c8" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 541, "zip_code" : "84302" } 542 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5c9" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 542, "zip_code" : "60515" } 543 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ca" }, "occupation" : "scientist", "gender" : "M", "age" : "33", "id" : 543, "zip_code" : "95123" } 544 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5cb" }, "occupation" : "other", "gender" : "F", "age" : "44", "id" : 544, "zip_code" : "29464" } 545 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5cc" }, "occupation" : "technician", "gender" : "M", "age" : "27", "id" : 545, "zip_code" : "08052" } 546 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5cd" }, "occupation" : "executive", "gender" : "M", "age" : "36", "id" : 546, "zip_code" : "22911" } 547 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ce" }, "occupation" : "educator", "gender" : "M", "age" : "50", "id" : 547, "zip_code" : "14534" } 548 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5cf" }, "occupation" : "writer", "gender" : "M", "age" : "51", "id" : 548, "zip_code" : "95468" } 549 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d0" }, "occupation" : "scientist", "gender" : "M", "age" : "42", "id" : 549, "zip_code" : "45680" } 550 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d1" }, "occupation" : "student", "gender" : "F", "age" : "16", "id" : 550, "zip_code" : "95453" } 551 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d2" }, "occupation" : "programmer", "gender" : "M", "age" : "25", "id" : 551, "zip_code" : "55414" } 552 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d3" }, "occupation" : "other", "gender" : "M", "age" : "45", "id" : 552, "zip_code" : "68147" } 553 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d4" }, "occupation" : "educator", "gender" : "M", "age" : "58", "id" : 553, "zip_code" : "62901" } 554 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d5" }, "occupation" : "scientist", "gender" : "M", "age" : "32", "id" : 554, "zip_code" : "62901" } 555 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d6" }, "occupation" : "educator", "gender" : "F", "age" : "29", "id" : 555, "zip_code" : "23227" } 556 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d7" }, "occupation" : "educator", "gender" : "F", "age" : "35", "id" : 556, "zip_code" : "30606" } 557 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d8" }, "occupation" : "writer", "gender" : "F", "age" : "30", "id" : 557, "zip_code" : "11217" } 558 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5d9" }, "occupation" : "writer", "gender" : "F", "age" : "56", "id" : 558, "zip_code" : "63132" } 559 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5da" }, "occupation" : "executive", "gender" : "M", "age" : "69", "id" : 559, "zip_code" : "10022" } 560 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5db" }, "occupation" : "student", "gender" : "M", "age" : "32", "id" : 560, "zip_code" : "10003" } 561 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5dc" }, "occupation" : "engineer", "gender" : "M", "age" : "23", "id" : 561, "zip_code" : "60005" } 562 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5dd" }, "occupation" : "administrator", "gender" : "F", "age" : "54", "id" : 562, "zip_code" : "20879" } 563 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5de" }, "occupation" : "librarian", "gender" : "F", "age" : "39", "id" : 563, "zip_code" : "32707" } 564 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5df" }, "occupation" : "retired", "gender" : "M", "age" : "65", "id" : 564, "zip_code" : "94591" } 565 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e0" }, "occupation" : "student", "gender" : "M", "age" : "40", "id" : 565, "zip_code" : "55422" } 566 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e1" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 566, "zip_code" : "14627" } 567 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e2" }, "occupation" : "entertainment", "gender" : "M", "age" : "24", "id" : 567, "zip_code" : "10003" } 568 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e3" }, "occupation" : "educator", "gender" : "M", "age" : "39", "id" : 568, "zip_code" : "01915" } 569 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e4" }, "occupation" : "educator", "gender" : "M", "age" : "34", "id" : 569, "zip_code" : "91903" } 570 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e5" }, "occupation" : "educator", "gender" : "M", "age" : "26", "id" : 570, "zip_code" : "14627" } 571 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e6" }, "occupation" : "artist", "gender" : "M", "age" : "34", "id" : 571, "zip_code" : "01945" } 572 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e7" }, "occupation" : "educator", "gender" : "M", "age" : "51", "id" : 572, "zip_code" : "20003" } 573 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e8" }, "occupation" : "retired", "gender" : "M", "age" : "68", "id" : 573, "zip_code" : "48911" } 574 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5e9" }, "occupation" : "educator", "gender" : "M", "age" : "56", "id" : 574, "zip_code" : "53188" } 575 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ea" }, "occupation" : "marketing", "gender" : "M", "age" : "33", "id" : 575, "zip_code" : "46032" } 576 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5eb" }, "occupation" : "executive", "gender" : "M", "age" : "48", "id" : 576, "zip_code" : "98281" } 577 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ec" }, "occupation" : "student", "gender" : "F", "age" : "36", "id" : 577, "zip_code" : "77845" } 578 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ed" }, "occupation" : "administrator", "gender" : "M", "age" : "31", "id" : 578, "zip_code" : "M7A1A" } 579 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ee" }, "occupation" : "educator", "gender" : "M", "age" : "32", "id" : 579, "zip_code" : "48103" } 580 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ef" }, "occupation" : "student", "gender" : "M", "age" : "16", "id" : 580, "zip_code" : "17961" } 581 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f0" }, "occupation" : "other", "gender" : "M", "age" : "37", "id" : 581, "zip_code" : "94131" } 582 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f1" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 582, "zip_code" : "93003" } 583 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f2" }, "occupation" : "engineer", "gender" : "M", "age" : "44", "id" : 583, "zip_code" : "29631" } 584 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f3" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 584, "zip_code" : "27511" } 585 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f4" }, "occupation" : "librarian", "gender" : "M", "age" : "69", "id" : 585, "zip_code" : "98501" } 586 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f5" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 586, "zip_code" : "79508" } 587 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f6" }, "occupation" : "other", "gender" : "M", "age" : "26", "id" : 587, "zip_code" : "14216" } 588 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f7" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 588, "zip_code" : "93063" } 589 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f8" }, "occupation" : "lawyer", "gender" : "M", "age" : "21", "id" : 589, "zip_code" : "90034" } 590 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5f9" }, "occupation" : "educator", "gender" : "M", "age" : "50", "id" : 590, "zip_code" : "82435" } 591 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5fa" }, "occupation" : "librarian", "gender" : "F", "age" : "57", "id" : 591, "zip_code" : "92093" } 592 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5fb" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 592, "zip_code" : "97520" } 593 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5fc" }, "occupation" : "educator", "gender" : "F", "age" : "31", "id" : 593, "zip_code" : "68767" } 594 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5fd" }, "occupation" : "educator", "gender" : "M", "age" : "46", "id" : 594, "zip_code" : "M4J2K" } 595 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5fe" }, "occupation" : "programmer", "gender" : "M", "age" : "25", "id" : 595, "zip_code" : "31909" } 596 | { "_id" : { "$oid" : "5666f321ba87840a40bcd5ff" }, "occupation" : "artist", "gender" : "M", "age" : "20", "id" : 596, "zip_code" : "77073" } 597 | { "_id" : { "$oid" : "5666f321ba87840a40bcd600" }, "occupation" : "other", "gender" : "M", "age" : "23", "id" : 597, "zip_code" : "84116" } 598 | { "_id" : { "$oid" : "5666f321ba87840a40bcd601" }, "occupation" : "marketing", "gender" : "F", "age" : "40", "id" : 598, "zip_code" : "43085" } 599 | { "_id" : { "$oid" : "5666f321ba87840a40bcd602" }, "occupation" : "student", "gender" : "F", "age" : "22", "id" : 599, "zip_code" : "R3T5K" } 600 | { "_id" : { "$oid" : "5666f321ba87840a40bcd603" }, "occupation" : "programmer", "gender" : "M", "age" : "34", "id" : 600, "zip_code" : "02320" } 601 | { "_id" : { "$oid" : "5666f321ba87840a40bcd604" }, "occupation" : "artist", "gender" : "F", "age" : "19", "id" : 601, "zip_code" : "99687" } 602 | { "_id" : { "$oid" : "5666f321ba87840a40bcd605" }, "occupation" : "other", "gender" : "F", "age" : "47", "id" : 602, "zip_code" : "34656" } 603 | { "_id" : { "$oid" : "5666f321ba87840a40bcd606" }, "occupation" : "programmer", "gender" : "M", "age" : "21", "id" : 603, "zip_code" : "47905" } 604 | { "_id" : { "$oid" : "5666f321ba87840a40bcd607" }, "occupation" : "educator", "gender" : "M", "age" : "39", "id" : 604, "zip_code" : "11787" } 605 | { "_id" : { "$oid" : "5666f321ba87840a40bcd608" }, "occupation" : "engineer", "gender" : "M", "age" : "33", "id" : 605, "zip_code" : "33716" } 606 | { "_id" : { "$oid" : "5666f321ba87840a40bcd609" }, "occupation" : "programmer", "gender" : "M", "age" : "28", "id" : 606, "zip_code" : "63044" } 607 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60a" }, "occupation" : "healthcare", "gender" : "F", "age" : "49", "id" : 607, "zip_code" : "02154" } 608 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60b" }, "occupation" : "other", "gender" : "M", "age" : "22", "id" : 608, "zip_code" : "10003" } 609 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60c" }, "occupation" : "student", "gender" : "F", "age" : "13", "id" : 609, "zip_code" : "55106" } 610 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60d" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 610, "zip_code" : "21227" } 611 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60e" }, "occupation" : "librarian", "gender" : "M", "age" : "46", "id" : 611, "zip_code" : "77008" } 612 | { "_id" : { "$oid" : "5666f321ba87840a40bcd60f" }, "occupation" : "educator", "gender" : "M", "age" : "36", "id" : 612, "zip_code" : "79070" } 613 | { "_id" : { "$oid" : "5666f321ba87840a40bcd610" }, "occupation" : "marketing", "gender" : "F", "age" : "37", "id" : 613, "zip_code" : "29678" } 614 | { "_id" : { "$oid" : "5666f321ba87840a40bcd611" }, "occupation" : "educator", "gender" : "M", "age" : "54", "id" : 614, "zip_code" : "80227" } 615 | { "_id" : { "$oid" : "5666f321ba87840a40bcd612" }, "occupation" : "educator", "gender" : "M", "age" : "38", "id" : 615, "zip_code" : "27705" } 616 | { "_id" : { "$oid" : "5666f321ba87840a40bcd613" }, "occupation" : "scientist", "gender" : "M", "age" : "55", "id" : 616, "zip_code" : "50613" } 617 | { "_id" : { "$oid" : "5666f321ba87840a40bcd614" }, "occupation" : "writer", "gender" : "F", "age" : "27", "id" : 617, "zip_code" : "11201" } 618 | { "_id" : { "$oid" : "5666f321ba87840a40bcd615" }, "occupation" : "student", "gender" : "F", "age" : "15", "id" : 618, "zip_code" : "44212" } 619 | { "_id" : { "$oid" : "5666f321ba87840a40bcd616" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 619, "zip_code" : "44134" } 620 | { "_id" : { "$oid" : "5666f321ba87840a40bcd617" }, "occupation" : "writer", "gender" : "F", "age" : "18", "id" : 620, "zip_code" : "81648" } 621 | { "_id" : { "$oid" : "5666f321ba87840a40bcd618" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 621, "zip_code" : "60402" } 622 | { "_id" : { "$oid" : "5666f321ba87840a40bcd619" }, "occupation" : "programmer", "gender" : "M", "age" : "25", "id" : 622, "zip_code" : "14850" } 623 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61a" }, "occupation" : "educator", "gender" : "F", "age" : "50", "id" : 623, "zip_code" : "60187" } 624 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61b" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 624, "zip_code" : "30067" } 625 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61c" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 625, "zip_code" : "20723" } 626 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61d" }, "occupation" : "scientist", "gender" : "M", "age" : "23", "id" : 626, "zip_code" : "19807" } 627 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61e" }, "occupation" : "engineer", "gender" : "M", "age" : "24", "id" : 627, "zip_code" : "08034" } 628 | { "_id" : { "$oid" : "5666f321ba87840a40bcd61f" }, "occupation" : "none", "gender" : "M", "age" : "13", "id" : 628, "zip_code" : "94306" } 629 | { "_id" : { "$oid" : "5666f321ba87840a40bcd620" }, "occupation" : "other", "gender" : "F", "age" : "46", "id" : 629, "zip_code" : "44224" } 630 | { "_id" : { "$oid" : "5666f321ba87840a40bcd621" }, "occupation" : "healthcare", "gender" : "F", "age" : "26", "id" : 630, "zip_code" : "55408" } 631 | { "_id" : { "$oid" : "5666f321ba87840a40bcd622" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 631, "zip_code" : "38866" } 632 | { "_id" : { "$oid" : "5666f321ba87840a40bcd623" }, "occupation" : "student", "gender" : "M", "age" : "18", "id" : 632, "zip_code" : "55454" } 633 | { "_id" : { "$oid" : "5666f321ba87840a40bcd624" }, "occupation" : "programmer", "gender" : "M", "age" : "35", "id" : 633, "zip_code" : "55414" } 634 | { "_id" : { "$oid" : "5666f321ba87840a40bcd625" }, "occupation" : "engineer", "gender" : "M", "age" : "39", "id" : 634, "zip_code" : "T8H1N" } 635 | { "_id" : { "$oid" : "5666f321ba87840a40bcd626" }, "occupation" : "other", "gender" : "M", "age" : "22", "id" : 635, "zip_code" : "23237" } 636 | { "_id" : { "$oid" : "5666f321ba87840a40bcd627" }, "occupation" : "educator", "gender" : "M", "age" : "47", "id" : 636, "zip_code" : "48043" } 637 | { "_id" : { "$oid" : "5666f321ba87840a40bcd628" }, "occupation" : "other", "gender" : "M", "age" : "30", "id" : 637, "zip_code" : "74101" } 638 | { "_id" : { "$oid" : "5666f321ba87840a40bcd629" }, "occupation" : "engineer", "gender" : "M", "age" : "45", "id" : 638, "zip_code" : "01940" } 639 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62a" }, "occupation" : "librarian", "gender" : "F", "age" : "42", "id" : 639, "zip_code" : "12065" } 640 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62b" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 640, "zip_code" : "61801" } 641 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62c" }, "occupation" : "student", "gender" : "M", "age" : "24", "id" : 641, "zip_code" : "60626" } 642 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62d" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 642, "zip_code" : "95521" } 643 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62e" }, "occupation" : "scientist", "gender" : "M", "age" : "39", "id" : 643, "zip_code" : "55122" } 644 | { "_id" : { "$oid" : "5666f321ba87840a40bcd62f" }, "occupation" : "retired", "gender" : "M", "age" : "51", "id" : 644, "zip_code" : "63645" } 645 | { "_id" : { "$oid" : "5666f321ba87840a40bcd630" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 645, "zip_code" : "53211" } 646 | { "_id" : { "$oid" : "5666f321ba87840a40bcd631" }, "occupation" : "student", "gender" : "F", "age" : "17", "id" : 646, "zip_code" : "51250" } 647 | { "_id" : { "$oid" : "5666f321ba87840a40bcd632" }, "occupation" : "educator", "gender" : "M", "age" : "40", "id" : 647, "zip_code" : "45810" } 648 | { "_id" : { "$oid" : "5666f321ba87840a40bcd633" }, "occupation" : "engineer", "gender" : "M", "age" : "43", "id" : 648, "zip_code" : "91351" } 649 | { "_id" : { "$oid" : "5666f321ba87840a40bcd634" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 649, "zip_code" : "39762" } 650 | { "_id" : { "$oid" : "5666f321ba87840a40bcd635" }, "occupation" : "engineer", "gender" : "M", "age" : "42", "id" : 650, "zip_code" : "83814" } 651 | { "_id" : { "$oid" : "5666f321ba87840a40bcd636" }, "occupation" : "retired", "gender" : "M", "age" : "65", "id" : 651, "zip_code" : "02903" } 652 | { "_id" : { "$oid" : "5666f321ba87840a40bcd637" }, "occupation" : "other", "gender" : "M", "age" : "35", "id" : 652, "zip_code" : "22911" } 653 | { "_id" : { "$oid" : "5666f321ba87840a40bcd638" }, "occupation" : "executive", "gender" : "M", "age" : "31", "id" : 653, "zip_code" : "55105" } 654 | { "_id" : { "$oid" : "5666f321ba87840a40bcd639" }, "occupation" : "student", "gender" : "F", "age" : "27", "id" : 654, "zip_code" : "78739" } 655 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63a" }, "occupation" : "healthcare", "gender" : "F", "age" : "50", "id" : 655, "zip_code" : "60657" } 656 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63b" }, "occupation" : "educator", "gender" : "M", "age" : "48", "id" : 656, "zip_code" : "10314" } 657 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63c" }, "occupation" : "none", "gender" : "F", "age" : "26", "id" : 657, "zip_code" : "78704" } 658 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63d" }, "occupation" : "programmer", "gender" : "M", "age" : "33", "id" : 658, "zip_code" : "92626" } 659 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63e" }, "occupation" : "educator", "gender" : "M", "age" : "31", "id" : 659, "zip_code" : "54248" } 660 | { "_id" : { "$oid" : "5666f321ba87840a40bcd63f" }, "occupation" : "student", "gender" : "M", "age" : "26", "id" : 660, "zip_code" : "77380" } 661 | { "_id" : { "$oid" : "5666f321ba87840a40bcd640" }, "occupation" : "programmer", "gender" : "M", "age" : "28", "id" : 661, "zip_code" : "98121" } 662 | { "_id" : { "$oid" : "5666f321ba87840a40bcd641" }, "occupation" : "librarian", "gender" : "M", "age" : "55", "id" : 662, "zip_code" : "19102" } 663 | { "_id" : { "$oid" : "5666f321ba87840a40bcd642" }, "occupation" : "other", "gender" : "M", "age" : "26", "id" : 663, "zip_code" : "19341" } 664 | { "_id" : { "$oid" : "5666f321ba87840a40bcd643" }, "occupation" : "engineer", "gender" : "M", "age" : "30", "id" : 664, "zip_code" : "94115" } 665 | { "_id" : { "$oid" : "5666f321ba87840a40bcd644" }, "occupation" : "administrator", "gender" : "M", "age" : "25", "id" : 665, "zip_code" : "55412" } 666 | { "_id" : { "$oid" : "5666f321ba87840a40bcd645" }, "occupation" : "administrator", "gender" : "M", "age" : "44", "id" : 666, "zip_code" : "61820" } 667 | { "_id" : { "$oid" : "5666f321ba87840a40bcd646" }, "occupation" : "librarian", "gender" : "M", "age" : "35", "id" : 667, "zip_code" : "01970" } 668 | { "_id" : { "$oid" : "5666f321ba87840a40bcd647" }, "occupation" : "writer", "gender" : "F", "age" : "29", "id" : 668, "zip_code" : "10016" } 669 | { "_id" : { "$oid" : "5666f321ba87840a40bcd648" }, "occupation" : "other", "gender" : "M", "age" : "37", "id" : 669, "zip_code" : "20009" } 670 | { "_id" : { "$oid" : "5666f321ba87840a40bcd649" }, "occupation" : "technician", "gender" : "M", "age" : "30", "id" : 670, "zip_code" : "21114" } 671 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64a" }, "occupation" : "programmer", "gender" : "M", "age" : "21", "id" : 671, "zip_code" : "91919" } 672 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64b" }, "occupation" : "administrator", "gender" : "F", "age" : "54", "id" : 672, "zip_code" : "90095" } 673 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64c" }, "occupation" : "educator", "gender" : "M", "age" : "51", "id" : 673, "zip_code" : "22906" } 674 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64d" }, "occupation" : "student", "gender" : "F", "age" : "13", "id" : 674, "zip_code" : "55337" } 675 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64e" }, "occupation" : "other", "gender" : "M", "age" : "34", "id" : 675, "zip_code" : "28814" } 676 | { "_id" : { "$oid" : "5666f321ba87840a40bcd64f" }, "occupation" : "programmer", "gender" : "M", "age" : "30", "id" : 676, "zip_code" : "32712" } 677 | { "_id" : { "$oid" : "5666f321ba87840a40bcd650" }, "occupation" : "other", "gender" : "M", "age" : "20", "id" : 677, "zip_code" : "99835" } 678 | { "_id" : { "$oid" : "5666f321ba87840a40bcd651" }, "occupation" : "educator", "gender" : "M", "age" : "50", "id" : 678, "zip_code" : "61462" } 679 | { "_id" : { "$oid" : "5666f321ba87840a40bcd652" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 679, "zip_code" : "54302" } 680 | { "_id" : { "$oid" : "5666f321ba87840a40bcd653" }, "occupation" : "lawyer", "gender" : "M", "age" : "33", "id" : 680, "zip_code" : "90405" } 681 | { "_id" : { "$oid" : "5666f321ba87840a40bcd654" }, "occupation" : "marketing", "gender" : "F", "age" : "44", "id" : 681, "zip_code" : "97208" } 682 | { "_id" : { "$oid" : "5666f321ba87840a40bcd655" }, "occupation" : "programmer", "gender" : "M", "age" : "23", "id" : 682, "zip_code" : "55128" } 683 | { "_id" : { "$oid" : "5666f321ba87840a40bcd656" }, "occupation" : "librarian", "gender" : "M", "age" : "42", "id" : 683, "zip_code" : "23509" } 684 | { "_id" : { "$oid" : "5666f321ba87840a40bcd657" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 684, "zip_code" : "55414" } 685 | { "_id" : { "$oid" : "5666f321ba87840a40bcd658" }, "occupation" : "librarian", "gender" : "F", "age" : "32", "id" : 685, "zip_code" : "55409" } 686 | { "_id" : { "$oid" : "5666f321ba87840a40bcd659" }, "occupation" : "educator", "gender" : "M", "age" : "32", "id" : 686, "zip_code" : "26506" } 687 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65a" }, "occupation" : "healthcare", "gender" : "F", "age" : "31", "id" : 687, "zip_code" : "27713" } 688 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65b" }, "occupation" : "administrator", "gender" : "F", "age" : "37", "id" : 688, "zip_code" : "60476" } 689 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65c" }, "occupation" : "other", "gender" : "M", "age" : "25", "id" : 689, "zip_code" : "45439" } 690 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65d" }, "occupation" : "salesman", "gender" : "M", "age" : "35", "id" : 690, "zip_code" : "63304" } 691 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65e" }, "occupation" : "educator", "gender" : "M", "age" : "34", "id" : 691, "zip_code" : "60089" } 692 | { "_id" : { "$oid" : "5666f321ba87840a40bcd65f" }, "occupation" : "engineer", "gender" : "M", "age" : "34", "id" : 692, "zip_code" : "18053" } 693 | { "_id" : { "$oid" : "5666f321ba87840a40bcd660" }, "occupation" : "healthcare", "gender" : "F", "age" : "43", "id" : 693, "zip_code" : "85210" } 694 | { "_id" : { "$oid" : "5666f321ba87840a40bcd661" }, "occupation" : "programmer", "gender" : "M", "age" : "60", "id" : 694, "zip_code" : "06365" } 695 | { "_id" : { "$oid" : "5666f321ba87840a40bcd662" }, "occupation" : "writer", "gender" : "M", "age" : "26", "id" : 695, "zip_code" : "38115" } 696 | { "_id" : { "$oid" : "5666f321ba87840a40bcd663" }, "occupation" : "other", "gender" : "M", "age" : "55", "id" : 696, "zip_code" : "94920" } 697 | { "_id" : { "$oid" : "5666f321ba87840a40bcd664" }, "occupation" : "other", "gender" : "M", "age" : "25", "id" : 697, "zip_code" : "77042" } 698 | { "_id" : { "$oid" : "5666f321ba87840a40bcd665" }, "occupation" : "programmer", "gender" : "F", "age" : "28", "id" : 698, "zip_code" : "06906" } 699 | { "_id" : { "$oid" : "5666f321ba87840a40bcd666" }, "occupation" : "other", "gender" : "M", "age" : "44", "id" : 699, "zip_code" : "96754" } 700 | { "_id" : { "$oid" : "5666f321ba87840a40bcd667" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 700, "zip_code" : "76309" } 701 | { "_id" : { "$oid" : "5666f321ba87840a40bcd668" }, "occupation" : "librarian", "gender" : "F", "age" : "51", "id" : 701, "zip_code" : "56321" } 702 | { "_id" : { "$oid" : "5666f321ba87840a40bcd669" }, "occupation" : "other", "gender" : "M", "age" : "37", "id" : 702, "zip_code" : "89104" } 703 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66a" }, "occupation" : "educator", "gender" : "M", "age" : "26", "id" : 703, "zip_code" : "49512" } 704 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66b" }, "occupation" : "librarian", "gender" : "F", "age" : "51", "id" : 704, "zip_code" : "91105" } 705 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66c" }, "occupation" : "student", "gender" : "F", "age" : "21", "id" : 705, "zip_code" : "54494" } 706 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66d" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 706, "zip_code" : "55454" } 707 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66e" }, "occupation" : "librarian", "gender" : "F", "age" : "56", "id" : 707, "zip_code" : "19146" } 708 | { "_id" : { "$oid" : "5666f321ba87840a40bcd66f" }, "occupation" : "homemaker", "gender" : "F", "age" : "26", "id" : 708, "zip_code" : "96349" } 709 | { "_id" : { "$oid" : "5666f321ba87840a40bcd670" }, "occupation" : "other", "gender" : "M", "age" : "21", "id" : 709, "zip_code" : "N4T1A" } 710 | { "_id" : { "$oid" : "5666f321ba87840a40bcd671" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 710, "zip_code" : "92020" } 711 | { "_id" : { "$oid" : "5666f321ba87840a40bcd672" }, "occupation" : "student", "gender" : "F", "age" : "22", "id" : 711, "zip_code" : "15203" } 712 | { "_id" : { "$oid" : "5666f321ba87840a40bcd673" }, "occupation" : "student", "gender" : "F", "age" : "22", "id" : 712, "zip_code" : "54901" } 713 | { "_id" : { "$oid" : "5666f321ba87840a40bcd674" }, "occupation" : "other", "gender" : "F", "age" : "42", "id" : 713, "zip_code" : "07204" } 714 | { "_id" : { "$oid" : "5666f321ba87840a40bcd675" }, "occupation" : "engineer", "gender" : "M", "age" : "26", "id" : 714, "zip_code" : "55343" } 715 | { "_id" : { "$oid" : "5666f321ba87840a40bcd676" }, "occupation" : "technician", "gender" : "M", "age" : "21", "id" : 715, "zip_code" : "91206" } 716 | { "_id" : { "$oid" : "5666f321ba87840a40bcd677" }, "occupation" : "administrator", "gender" : "F", "age" : "36", "id" : 716, "zip_code" : "44265" } 717 | { "_id" : { "$oid" : "5666f321ba87840a40bcd678" }, "occupation" : "technician", "gender" : "M", "age" : "24", "id" : 717, "zip_code" : "84105" } 718 | { "_id" : { "$oid" : "5666f321ba87840a40bcd679" }, "occupation" : "technician", "gender" : "M", "age" : "42", "id" : 718, "zip_code" : "64118" } 719 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67a" }, "occupation" : "other", "gender" : "F", "age" : "37", "id" : 719, "zip_code" : "V0R2H" } 720 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67b" }, "occupation" : "administrator", "gender" : "F", "age" : "49", "id" : 720, "zip_code" : "16506" } 721 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67c" }, "occupation" : "entertainment", "gender" : "F", "age" : "24", "id" : 721, "zip_code" : "11238" } 722 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67d" }, "occupation" : "homemaker", "gender" : "F", "age" : "50", "id" : 722, "zip_code" : "17331" } 723 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67e" }, "occupation" : "executive", "gender" : "M", "age" : "26", "id" : 723, "zip_code" : "94403" } 724 | { "_id" : { "$oid" : "5666f321ba87840a40bcd67f" }, "occupation" : "executive", "gender" : "M", "age" : "31", "id" : 724, "zip_code" : "40243" } 725 | { "_id" : { "$oid" : "5666f321ba87840a40bcd680" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 725, "zip_code" : "91711" } 726 | { "_id" : { "$oid" : "5666f321ba87840a40bcd681" }, "occupation" : "administrator", "gender" : "F", "age" : "25", "id" : 726, "zip_code" : "80538" } 727 | { "_id" : { "$oid" : "5666f321ba87840a40bcd682" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 727, "zip_code" : "78741" } 728 | { "_id" : { "$oid" : "5666f321ba87840a40bcd683" }, "occupation" : "executive", "gender" : "M", "age" : "58", "id" : 728, "zip_code" : "94306" } 729 | { "_id" : { "$oid" : "5666f321ba87840a40bcd684" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 729, "zip_code" : "56567" } 730 | { "_id" : { "$oid" : "5666f321ba87840a40bcd685" }, "occupation" : "scientist", "gender" : "F", "age" : "31", "id" : 730, "zip_code" : "32114" } 731 | { "_id" : { "$oid" : "5666f321ba87840a40bcd686" }, "occupation" : "educator", "gender" : "F", "age" : "41", "id" : 731, "zip_code" : "70403" } 732 | { "_id" : { "$oid" : "5666f321ba87840a40bcd687" }, "occupation" : "other", "gender" : "F", "age" : "28", "id" : 732, "zip_code" : "98405" } 733 | { "_id" : { "$oid" : "5666f321ba87840a40bcd688" }, "occupation" : "other", "gender" : "F", "age" : "44", "id" : 733, "zip_code" : "60630" } 734 | { "_id" : { "$oid" : "5666f321ba87840a40bcd689" }, "occupation" : "other", "gender" : "F", "age" : "25", "id" : 734, "zip_code" : "63108" } 735 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68a" }, "occupation" : "healthcare", "gender" : "F", "age" : "29", "id" : 735, "zip_code" : "85719" } 736 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68b" }, "occupation" : "writer", "gender" : "F", "age" : "48", "id" : 736, "zip_code" : "94618" } 737 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68c" }, "occupation" : "programmer", "gender" : "M", "age" : "30", "id" : 737, "zip_code" : "98072" } 738 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68d" }, "occupation" : "technician", "gender" : "M", "age" : "35", "id" : 738, "zip_code" : "95403" } 739 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68e" }, "occupation" : "technician", "gender" : "M", "age" : "35", "id" : 739, "zip_code" : "73162" } 740 | { "_id" : { "$oid" : "5666f321ba87840a40bcd68f" }, "occupation" : "educator", "gender" : "F", "age" : "25", "id" : 740, "zip_code" : "22206" } 741 | { "_id" : { "$oid" : "5666f321ba87840a40bcd690" }, "occupation" : "writer", "gender" : "M", "age" : "25", "id" : 741, "zip_code" : "63108" } 742 | { "_id" : { "$oid" : "5666f321ba87840a40bcd691" }, "occupation" : "student", "gender" : "M", "age" : "35", "id" : 742, "zip_code" : "29210" } 743 | { "_id" : { "$oid" : "5666f321ba87840a40bcd692" }, "occupation" : "programmer", "gender" : "M", "age" : "31", "id" : 743, "zip_code" : "92660" } 744 | { "_id" : { "$oid" : "5666f321ba87840a40bcd693" }, "occupation" : "marketing", "gender" : "M", "age" : "35", "id" : 744, "zip_code" : "47024" } 745 | { "_id" : { "$oid" : "5666f321ba87840a40bcd694" }, "occupation" : "writer", "gender" : "M", "age" : "42", "id" : 745, "zip_code" : "55113" } 746 | { "_id" : { "$oid" : "5666f321ba87840a40bcd695" }, "occupation" : "engineer", "gender" : "M", "age" : "25", "id" : 746, "zip_code" : "19047" } 747 | { "_id" : { "$oid" : "5666f321ba87840a40bcd696" }, "occupation" : "other", "gender" : "M", "age" : "19", "id" : 747, "zip_code" : "93612" } 748 | { "_id" : { "$oid" : "5666f321ba87840a40bcd697" }, "occupation" : "administrator", "gender" : "M", "age" : "28", "id" : 748, "zip_code" : "94720" } 749 | { "_id" : { "$oid" : "5666f321ba87840a40bcd698" }, "occupation" : "other", "gender" : "M", "age" : "33", "id" : 749, "zip_code" : "80919" } 750 | { "_id" : { "$oid" : "5666f321ba87840a40bcd699" }, "occupation" : "administrator", "gender" : "M", "age" : "28", "id" : 750, "zip_code" : "32303" } 751 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69a" }, "occupation" : "other", "gender" : "F", "age" : "24", "id" : 751, "zip_code" : "90034" } 752 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69b" }, "occupation" : "retired", "gender" : "M", "age" : "60", "id" : 752, "zip_code" : "21201" } 753 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69c" }, "occupation" : "salesman", "gender" : "M", "age" : "56", "id" : 753, "zip_code" : "91206" } 754 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69d" }, "occupation" : "librarian", "gender" : "F", "age" : "59", "id" : 754, "zip_code" : "62901" } 755 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69e" }, "occupation" : "educator", "gender" : "F", "age" : "44", "id" : 755, "zip_code" : "97007" } 756 | { "_id" : { "$oid" : "5666f321ba87840a40bcd69f" }, "occupation" : "none", "gender" : "F", "age" : "30", "id" : 756, "zip_code" : "90247" } 757 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a0" }, "occupation" : "student", "gender" : "M", "age" : "26", "id" : 757, "zip_code" : "55104" } 758 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a1" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 758, "zip_code" : "53706" } 759 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a2" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 759, "zip_code" : "68503" } 760 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a3" }, "occupation" : "other", "gender" : "F", "age" : "35", "id" : 760, "zip_code" : "14211" } 761 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a4" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 761, "zip_code" : "97302" } 762 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a5" }, "occupation" : "administrator", "gender" : "M", "age" : "32", "id" : 762, "zip_code" : "95050" } 763 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a6" }, "occupation" : "scientist", "gender" : "M", "age" : "27", "id" : 763, "zip_code" : "02113" } 764 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a7" }, "occupation" : "educator", "gender" : "F", "age" : "27", "id" : 764, "zip_code" : "62903" } 765 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a8" }, "occupation" : "student", "gender" : "M", "age" : "31", "id" : 765, "zip_code" : "33066" } 766 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6a9" }, "occupation" : "other", "gender" : "M", "age" : "42", "id" : 766, "zip_code" : "10960" } 767 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6aa" }, "occupation" : "engineer", "gender" : "M", "age" : "70", "id" : 767, "zip_code" : "00000" } 768 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ab" }, "occupation" : "administrator", "gender" : "M", "age" : "29", "id" : 768, "zip_code" : "12866" } 769 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ac" }, "occupation" : "executive", "gender" : "M", "age" : "39", "id" : 769, "zip_code" : "06927" } 770 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ad" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 770, "zip_code" : "14216" } 771 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ae" }, "occupation" : "student", "gender" : "M", "age" : "26", "id" : 771, "zip_code" : "15232" } 772 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6af" }, "occupation" : "writer", "gender" : "M", "age" : "50", "id" : 772, "zip_code" : "27105" } 773 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b0" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 773, "zip_code" : "55414" } 774 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b1" }, "occupation" : "student", "gender" : "M", "age" : "30", "id" : 774, "zip_code" : "80027" } 775 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b2" }, "occupation" : "executive", "gender" : "M", "age" : "46", "id" : 775, "zip_code" : "90036" } 776 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b3" }, "occupation" : "librarian", "gender" : "M", "age" : "30", "id" : 776, "zip_code" : "51157" } 777 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b4" }, "occupation" : "programmer", "gender" : "M", "age" : "63", "id" : 777, "zip_code" : "01810" } 778 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b5" }, "occupation" : "student", "gender" : "M", "age" : "34", "id" : 778, "zip_code" : "01960" } 779 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b6" }, "occupation" : "student", "gender" : "M", "age" : "31", "id" : 779, "zip_code" : "K7L5J" } 780 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b7" }, "occupation" : "programmer", "gender" : "M", "age" : "49", "id" : 780, "zip_code" : "94560" } 781 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b8" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 781, "zip_code" : "48825" } 782 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6b9" }, "occupation" : "artist", "gender" : "F", "age" : "21", "id" : 782, "zip_code" : "33205" } 783 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ba" }, "occupation" : "marketing", "gender" : "M", "age" : "30", "id" : 783, "zip_code" : "77081" } 784 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6bb" }, "occupation" : "administrator", "gender" : "M", "age" : "47", "id" : 784, "zip_code" : "91040" } 785 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6bc" }, "occupation" : "engineer", "gender" : "M", "age" : "32", "id" : 785, "zip_code" : "23322" } 786 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6bd" }, "occupation" : "engineer", "gender" : "F", "age" : "36", "id" : 786, "zip_code" : "01754" } 787 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6be" }, "occupation" : "student", "gender" : "F", "age" : "18", "id" : 787, "zip_code" : "98620" } 788 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6bf" }, "occupation" : "administrator", "gender" : "M", "age" : "51", "id" : 788, "zip_code" : "05779" } 789 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c0" }, "occupation" : "other", "gender" : "M", "age" : "29", "id" : 789, "zip_code" : "55420" } 790 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c1" }, "occupation" : "technician", "gender" : "M", "age" : "27", "id" : 790, "zip_code" : "80913" } 791 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c2" }, "occupation" : "educator", "gender" : "M", "age" : "31", "id" : 791, "zip_code" : "20064" } 792 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c3" }, "occupation" : "programmer", "gender" : "M", "age" : "40", "id" : 792, "zip_code" : "12205" } 793 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c4" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 793, "zip_code" : "85281" } 794 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c5" }, "occupation" : "educator", "gender" : "M", "age" : "32", "id" : 794, "zip_code" : "57197" } 795 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c6" }, "occupation" : "programmer", "gender" : "M", "age" : "30", "id" : 795, "zip_code" : "08610" } 796 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c7" }, "occupation" : "writer", "gender" : "F", "age" : "32", "id" : 796, "zip_code" : "33755" } 797 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c8" }, "occupation" : "other", "gender" : "F", "age" : "44", "id" : 797, "zip_code" : "62522" } 798 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6c9" }, "occupation" : "writer", "gender" : "F", "age" : "40", "id" : 798, "zip_code" : "64131" } 799 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ca" }, "occupation" : "administrator", "gender" : "F", "age" : "49", "id" : 799, "zip_code" : "19716" } 800 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6cb" }, "occupation" : "programmer", "gender" : "M", "age" : "25", "id" : 800, "zip_code" : "55337" } 801 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6cc" }, "occupation" : "writer", "gender" : "M", "age" : "22", "id" : 801, "zip_code" : "92154" } 802 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6cd" }, "occupation" : "administrator", "gender" : "M", "age" : "35", "id" : 802, "zip_code" : "34105" } 803 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ce" }, "occupation" : "administrator", "gender" : "M", "age" : "70", "id" : 803, "zip_code" : "78212" } 804 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6cf" }, "occupation" : "educator", "gender" : "M", "age" : "39", "id" : 804, "zip_code" : "61820" } 805 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d0" }, "occupation" : "other", "gender" : "F", "age" : "27", "id" : 805, "zip_code" : "20009" } 806 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d1" }, "occupation" : "marketing", "gender" : "M", "age" : "27", "id" : 806, "zip_code" : "11217" } 807 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d2" }, "occupation" : "healthcare", "gender" : "F", "age" : "41", "id" : 807, "zip_code" : "93555" } 808 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d3" }, "occupation" : "salesman", "gender" : "M", "age" : "45", "id" : 808, "zip_code" : "90016" } 809 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d4" }, "occupation" : "marketing", "gender" : "F", "age" : "50", "id" : 809, "zip_code" : "30803" } 810 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d5" }, "occupation" : "other", "gender" : "F", "age" : "55", "id" : 810, "zip_code" : "80526" } 811 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d6" }, "occupation" : "educator", "gender" : "F", "age" : "40", "id" : 811, "zip_code" : "73013" } 812 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d7" }, "occupation" : "technician", "gender" : "M", "age" : "22", "id" : 812, "zip_code" : "76234" } 813 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d8" }, "occupation" : "student", "gender" : "F", "age" : "14", "id" : 813, "zip_code" : "02136" } 814 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6d9" }, "occupation" : "other", "gender" : "M", "age" : "30", "id" : 814, "zip_code" : "12345" } 815 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6da" }, "occupation" : "other", "gender" : "M", "age" : "32", "id" : 815, "zip_code" : "28806" } 816 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6db" }, "occupation" : "other", "gender" : "M", "age" : "34", "id" : 816, "zip_code" : "20755" } 817 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6dc" }, "occupation" : "student", "gender" : "M", "age" : "19", "id" : 817, "zip_code" : "60152" } 818 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6dd" }, "occupation" : "librarian", "gender" : "M", "age" : "28", "id" : 818, "zip_code" : "27514" } 819 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6de" }, "occupation" : "administrator", "gender" : "M", "age" : "59", "id" : 819, "zip_code" : "40205" } 820 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6df" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 820, "zip_code" : "37725" } 821 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e0" }, "occupation" : "engineer", "gender" : "M", "age" : "37", "id" : 821, "zip_code" : "77845" } 822 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e1" }, "occupation" : "librarian", "gender" : "F", "age" : "29", "id" : 822, "zip_code" : "53144" } 823 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e2" }, "occupation" : "artist", "gender" : "M", "age" : "27", "id" : 823, "zip_code" : "50322" } 824 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e3" }, "occupation" : "other", "gender" : "M", "age" : "31", "id" : 824, "zip_code" : "15017" } 825 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e4" }, "occupation" : "engineer", "gender" : "M", "age" : "44", "id" : 825, "zip_code" : "05452" } 826 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e5" }, "occupation" : "artist", "gender" : "M", "age" : "28", "id" : 826, "zip_code" : "77048" } 827 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e6" }, "occupation" : "engineer", "gender" : "F", "age" : "23", "id" : 827, "zip_code" : "80228" } 828 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e7" }, "occupation" : "librarian", "gender" : "M", "age" : "28", "id" : 828, "zip_code" : "85282" } 829 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e8" }, "occupation" : "writer", "gender" : "M", "age" : "48", "id" : 829, "zip_code" : "80209" } 830 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6e9" }, "occupation" : "programmer", "gender" : "M", "age" : "46", "id" : 830, "zip_code" : "53066" } 831 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ea" }, "occupation" : "other", "gender" : "M", "age" : "21", "id" : 831, "zip_code" : "33765" } 832 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6eb" }, "occupation" : "technician", "gender" : "M", "age" : "24", "id" : 832, "zip_code" : "77042" } 833 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ec" }, "occupation" : "writer", "gender" : "M", "age" : "34", "id" : 833, "zip_code" : "90019" } 834 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ed" }, "occupation" : "other", "gender" : "M", "age" : "26", "id" : 834, "zip_code" : "64153" } 835 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ee" }, "occupation" : "executive", "gender" : "F", "age" : "44", "id" : 835, "zip_code" : "11577" } 836 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ef" }, "occupation" : "artist", "gender" : "M", "age" : "44", "id" : 836, "zip_code" : "10018" } 837 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f0" }, "occupation" : "artist", "gender" : "F", "age" : "36", "id" : 837, "zip_code" : "55409" } 838 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f1" }, "occupation" : "student", "gender" : "M", "age" : "23", "id" : 838, "zip_code" : "01375" } 839 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f2" }, "occupation" : "entertainment", "gender" : "F", "age" : "38", "id" : 839, "zip_code" : "90814" } 840 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f3" }, "occupation" : "artist", "gender" : "M", "age" : "39", "id" : 840, "zip_code" : "55406" } 841 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f4" }, "occupation" : "doctor", "gender" : "M", "age" : "45", "id" : 841, "zip_code" : "47401" } 842 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f5" }, "occupation" : "writer", "gender" : "M", "age" : "40", "id" : 842, "zip_code" : "93055" } 843 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f6" }, "occupation" : "librarian", "gender" : "M", "age" : "35", "id" : 843, "zip_code" : "44212" } 844 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f7" }, "occupation" : "engineer", "gender" : "M", "age" : "22", "id" : 844, "zip_code" : "95662" } 845 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f8" }, "occupation" : "doctor", "gender" : "M", "age" : "64", "id" : 845, "zip_code" : "97405" } 846 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6f9" }, "occupation" : "lawyer", "gender" : "M", "age" : "27", "id" : 846, "zip_code" : "47130" } 847 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6fa" }, "occupation" : "student", "gender" : "M", "age" : "29", "id" : 847, "zip_code" : "55417" } 848 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6fb" }, "occupation" : "engineer", "gender" : "M", "age" : "46", "id" : 848, "zip_code" : "02146" } 849 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6fc" }, "occupation" : "student", "gender" : "F", "age" : "15", "id" : 849, "zip_code" : "25652" } 850 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6fd" }, "occupation" : "technician", "gender" : "M", "age" : "34", "id" : 850, "zip_code" : "78390" } 851 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6fe" }, "occupation" : "other", "gender" : "M", "age" : "18", "id" : 851, "zip_code" : "29646" } 852 | { "_id" : { "$oid" : "5666f321ba87840a40bcd6ff" }, "occupation" : "administrator", "gender" : "M", "age" : "46", "id" : 852, "zip_code" : "94086" } 853 | { "_id" : { "$oid" : "5666f321ba87840a40bcd700" }, "occupation" : "writer", "gender" : "M", "age" : "49", "id" : 853, "zip_code" : "40515" } 854 | { "_id" : { "$oid" : "5666f321ba87840a40bcd701" }, "occupation" : "student", "gender" : "F", "age" : "29", "id" : 854, "zip_code" : "55408" } 855 | { "_id" : { "$oid" : "5666f321ba87840a40bcd702" }, "occupation" : "librarian", "gender" : "M", "age" : "53", "id" : 855, "zip_code" : "04988" } 856 | { "_id" : { "$oid" : "5666f321ba87840a40bcd703" }, "occupation" : "marketing", "gender" : "F", "age" : "43", "id" : 856, "zip_code" : "97215" } 857 | { "_id" : { "$oid" : "5666f321ba87840a40bcd704" }, "occupation" : "administrator", "gender" : "F", "age" : "35", "id" : 857, "zip_code" : "V1G4L" } 858 | { "_id" : { "$oid" : "5666f321ba87840a40bcd705" }, "occupation" : "educator", "gender" : "M", "age" : "63", "id" : 858, "zip_code" : "09645" } 859 | { "_id" : { "$oid" : "5666f321ba87840a40bcd706" }, "occupation" : "other", "gender" : "F", "age" : "18", "id" : 859, "zip_code" : "06492" } 860 | { "_id" : { "$oid" : "5666f321ba87840a40bcd707" }, "occupation" : "retired", "gender" : "F", "age" : "70", "id" : 860, "zip_code" : "48322" } 861 | { "_id" : { "$oid" : "5666f321ba87840a40bcd708" }, "occupation" : "student", "gender" : "F", "age" : "38", "id" : 861, "zip_code" : "14085" } 862 | { "_id" : { "$oid" : "5666f321ba87840a40bcd709" }, "occupation" : "executive", "gender" : "M", "age" : "25", "id" : 862, "zip_code" : "13820" } 863 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70a" }, "occupation" : "student", "gender" : "M", "age" : "17", "id" : 863, "zip_code" : "60089" } 864 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70b" }, "occupation" : "programmer", "gender" : "M", "age" : "27", "id" : 864, "zip_code" : "63021" } 865 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70c" }, "occupation" : "artist", "gender" : "M", "age" : "25", "id" : 865, "zip_code" : "11231" } 866 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70d" }, "occupation" : "other", "gender" : "M", "age" : "45", "id" : 866, "zip_code" : "60302" } 867 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70e" }, "occupation" : "scientist", "gender" : "M", "age" : "24", "id" : 867, "zip_code" : "92507" } 868 | { "_id" : { "$oid" : "5666f321ba87840a40bcd70f" }, "occupation" : "programmer", "gender" : "M", "age" : "21", "id" : 868, "zip_code" : "55303" } 869 | { "_id" : { "$oid" : "5666f321ba87840a40bcd710" }, "occupation" : "student", "gender" : "M", "age" : "30", "id" : 869, "zip_code" : "10025" } 870 | { "_id" : { "$oid" : "5666f321ba87840a40bcd711" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 870, "zip_code" : "65203" } 871 | { "_id" : { "$oid" : "5666f321ba87840a40bcd712" }, "occupation" : "executive", "gender" : "M", "age" : "31", "id" : 871, "zip_code" : "44648" } 872 | { "_id" : { "$oid" : "5666f321ba87840a40bcd713" }, "occupation" : "student", "gender" : "F", "age" : "19", "id" : 872, "zip_code" : "74078" } 873 | { "_id" : { "$oid" : "5666f321ba87840a40bcd714" }, "occupation" : "administrator", "gender" : "F", "age" : "48", "id" : 873, "zip_code" : "33763" } 874 | { "_id" : { "$oid" : "5666f321ba87840a40bcd715" }, "occupation" : "scientist", "gender" : "M", "age" : "36", "id" : 874, "zip_code" : "37076" } 875 | { "_id" : { "$oid" : "5666f321ba87840a40bcd716" }, "occupation" : "student", "gender" : "F", "age" : "24", "id" : 875, "zip_code" : "35802" } 876 | { "_id" : { "$oid" : "5666f321ba87840a40bcd717" }, "occupation" : "other", "gender" : "M", "age" : "41", "id" : 876, "zip_code" : "20902" } 877 | { "_id" : { "$oid" : "5666f321ba87840a40bcd718" }, "occupation" : "other", "gender" : "M", "age" : "30", "id" : 877, "zip_code" : "77504" } 878 | { "_id" : { "$oid" : "5666f321ba87840a40bcd719" }, "occupation" : "educator", "gender" : "F", "age" : "50", "id" : 878, "zip_code" : "98027" } 879 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71a" }, "occupation" : "administrator", "gender" : "F", "age" : "33", "id" : 879, "zip_code" : "55337" } 880 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71b" }, "occupation" : "student", "gender" : "M", "age" : "13", "id" : 880, "zip_code" : "83702" } 881 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71c" }, "occupation" : "marketing", "gender" : "M", "age" : "39", "id" : 881, "zip_code" : "43017" } 882 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71d" }, "occupation" : "engineer", "gender" : "M", "age" : "35", "id" : 882, "zip_code" : "40503" } 883 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71e" }, "occupation" : "librarian", "gender" : "M", "age" : "49", "id" : 883, "zip_code" : "50266" } 884 | { "_id" : { "$oid" : "5666f321ba87840a40bcd71f" }, "occupation" : "engineer", "gender" : "M", "age" : "44", "id" : 884, "zip_code" : "55337" } 885 | { "_id" : { "$oid" : "5666f321ba87840a40bcd720" }, "occupation" : "other", "gender" : "F", "age" : "30", "id" : 885, "zip_code" : "95316" } 886 | { "_id" : { "$oid" : "5666f321ba87840a40bcd721" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 886, "zip_code" : "61820" } 887 | { "_id" : { "$oid" : "5666f321ba87840a40bcd722" }, "occupation" : "student", "gender" : "F", "age" : "14", "id" : 887, "zip_code" : "27249" } 888 | { "_id" : { "$oid" : "5666f321ba87840a40bcd723" }, "occupation" : "scientist", "gender" : "M", "age" : "41", "id" : 888, "zip_code" : "17036" } 889 | { "_id" : { "$oid" : "5666f321ba87840a40bcd724" }, "occupation" : "technician", "gender" : "M", "age" : "24", "id" : 889, "zip_code" : "78704" } 890 | { "_id" : { "$oid" : "5666f321ba87840a40bcd725" }, "occupation" : "student", "gender" : "M", "age" : "32", "id" : 890, "zip_code" : "97301" } 891 | { "_id" : { "$oid" : "5666f321ba87840a40bcd726" }, "occupation" : "administrator", "gender" : "F", "age" : "51", "id" : 891, "zip_code" : "03062" } 892 | { "_id" : { "$oid" : "5666f321ba87840a40bcd727" }, "occupation" : "other", "gender" : "M", "age" : "36", "id" : 892, "zip_code" : "45243" } 893 | { "_id" : { "$oid" : "5666f321ba87840a40bcd728" }, "occupation" : "student", "gender" : "M", "age" : "25", "id" : 893, "zip_code" : "95823" } 894 | { "_id" : { "$oid" : "5666f321ba87840a40bcd729" }, "occupation" : "educator", "gender" : "M", "age" : "47", "id" : 894, "zip_code" : "74075" } 895 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72a" }, "occupation" : "librarian", "gender" : "F", "age" : "31", "id" : 895, "zip_code" : "32301" } 896 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72b" }, "occupation" : "writer", "gender" : "M", "age" : "28", "id" : 896, "zip_code" : "91505" } 897 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72c" }, "occupation" : "other", "gender" : "M", "age" : "30", "id" : 897, "zip_code" : "33484" } 898 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72d" }, "occupation" : "homemaker", "gender" : "M", "age" : "23", "id" : 898, "zip_code" : "61755" } 899 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72e" }, "occupation" : "other", "gender" : "M", "age" : "32", "id" : 899, "zip_code" : "55116" } 900 | { "_id" : { "$oid" : "5666f321ba87840a40bcd72f" }, "occupation" : "retired", "gender" : "M", "age" : "60", "id" : 900, "zip_code" : "18505" } 901 | { "_id" : { "$oid" : "5666f321ba87840a40bcd730" }, "occupation" : "executive", "gender" : "M", "age" : "38", "id" : 901, "zip_code" : "L1V3W" } 902 | { "_id" : { "$oid" : "5666f321ba87840a40bcd731" }, "occupation" : "artist", "gender" : "F", "age" : "45", "id" : 902, "zip_code" : "97203" } 903 | { "_id" : { "$oid" : "5666f321ba87840a40bcd732" }, "occupation" : "educator", "gender" : "M", "age" : "28", "id" : 903, "zip_code" : "20850" } 904 | { "_id" : { "$oid" : "5666f321ba87840a40bcd733" }, "occupation" : "student", "gender" : "F", "age" : "17", "id" : 904, "zip_code" : "61073" } 905 | { "_id" : { "$oid" : "5666f321ba87840a40bcd734" }, "occupation" : "other", "gender" : "M", "age" : "27", "id" : 905, "zip_code" : "30350" } 906 | { "_id" : { "$oid" : "5666f321ba87840a40bcd735" }, "occupation" : "librarian", "gender" : "M", "age" : "45", "id" : 906, "zip_code" : "70124" } 907 | { "_id" : { "$oid" : "5666f321ba87840a40bcd736" }, "occupation" : "other", "gender" : "F", "age" : "25", "id" : 907, "zip_code" : "80526" } 908 | { "_id" : { "$oid" : "5666f321ba87840a40bcd737" }, "occupation" : "librarian", "gender" : "F", "age" : "44", "id" : 908, "zip_code" : "68504" } 909 | { "_id" : { "$oid" : "5666f321ba87840a40bcd738" }, "occupation" : "educator", "gender" : "F", "age" : "50", "id" : 909, "zip_code" : "53171" } 910 | { "_id" : { "$oid" : "5666f321ba87840a40bcd739" }, "occupation" : "healthcare", "gender" : "M", "age" : "28", "id" : 910, "zip_code" : "29301" } 911 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73a" }, "occupation" : "writer", "gender" : "F", "age" : "37", "id" : 911, "zip_code" : "53210" } 912 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73b" }, "occupation" : "other", "gender" : "M", "age" : "51", "id" : 912, "zip_code" : "06512" } 913 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73c" }, "occupation" : "student", "gender" : "M", "age" : "27", "id" : 913, "zip_code" : "76201" } 914 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73d" }, "occupation" : "other", "gender" : "F", "age" : "44", "id" : 914, "zip_code" : "08105" } 915 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73e" }, "occupation" : "entertainment", "gender" : "M", "age" : "50", "id" : 915, "zip_code" : "60614" } 916 | { "_id" : { "$oid" : "5666f321ba87840a40bcd73f" }, "occupation" : "engineer", "gender" : "M", "age" : "27", "id" : 916, "zip_code" : "N2L5N" } 917 | { "_id" : { "$oid" : "5666f321ba87840a40bcd740" }, "occupation" : "student", "gender" : "F", "age" : "22", "id" : 917, "zip_code" : "20006" } 918 | { "_id" : { "$oid" : "5666f321ba87840a40bcd741" }, "occupation" : "scientist", "gender" : "M", "age" : "40", "id" : 918, "zip_code" : "70116" } 919 | { "_id" : { "$oid" : "5666f321ba87840a40bcd742" }, "occupation" : "other", "gender" : "M", "age" : "25", "id" : 919, "zip_code" : "14216" } 920 | { "_id" : { "$oid" : "5666f321ba87840a40bcd743" }, "occupation" : "artist", "gender" : "F", "age" : "30", "id" : 920, "zip_code" : "90008" } 921 | { "_id" : { "$oid" : "5666f321ba87840a40bcd744" }, "occupation" : "student", "gender" : "F", "age" : "20", "id" : 921, "zip_code" : "98801" } 922 | { "_id" : { "$oid" : "5666f321ba87840a40bcd745" }, "occupation" : "administrator", "gender" : "F", "age" : "29", "id" : 922, "zip_code" : "21114" } 923 | { "_id" : { "$oid" : "5666f321ba87840a40bcd746" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 923, "zip_code" : "E2E3R" } 924 | { "_id" : { "$oid" : "5666f321ba87840a40bcd747" }, "occupation" : "other", "gender" : "M", "age" : "29", "id" : 924, "zip_code" : "11753" } 925 | { "_id" : { "$oid" : "5666f321ba87840a40bcd748" }, "occupation" : "salesman", "gender" : "F", "age" : "18", "id" : 925, "zip_code" : "49036" } 926 | { "_id" : { "$oid" : "5666f321ba87840a40bcd749" }, "occupation" : "entertainment", "gender" : "M", "age" : "49", "id" : 926, "zip_code" : "01701" } 927 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74a" }, "occupation" : "programmer", "gender" : "M", "age" : "23", "id" : 927, "zip_code" : "55428" } 928 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74b" }, "occupation" : "student", "gender" : "M", "age" : "21", "id" : 928, "zip_code" : "55408" } 929 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74c" }, "occupation" : "scientist", "gender" : "M", "age" : "44", "id" : 929, "zip_code" : "53711" } 930 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74d" }, "occupation" : "scientist", "gender" : "F", "age" : "28", "id" : 930, "zip_code" : "07310" } 931 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74e" }, "occupation" : "educator", "gender" : "M", "age" : "60", "id" : 931, "zip_code" : "33556" } 932 | { "_id" : { "$oid" : "5666f321ba87840a40bcd74f" }, "occupation" : "educator", "gender" : "M", "age" : "58", "id" : 932, "zip_code" : "06437" } 933 | { "_id" : { "$oid" : "5666f321ba87840a40bcd750" }, "occupation" : "student", "gender" : "M", "age" : "28", "id" : 933, "zip_code" : "48105" } 934 | { "_id" : { "$oid" : "5666f321ba87840a40bcd751" }, "occupation" : "engineer", "gender" : "M", "age" : "61", "id" : 934, "zip_code" : "22902" } 935 | { "_id" : { "$oid" : "5666f321ba87840a40bcd752" }, "occupation" : "doctor", "gender" : "M", "age" : "42", "id" : 935, "zip_code" : "66221" } 936 | { "_id" : { "$oid" : "5666f321ba87840a40bcd753" }, "occupation" : "other", "gender" : "M", "age" : "24", "id" : 936, "zip_code" : "32789" } 937 | { "_id" : { "$oid" : "5666f321ba87840a40bcd754" }, "occupation" : "educator", "gender" : "M", "age" : "48", "id" : 937, "zip_code" : "98072" } 938 | { "_id" : { "$oid" : "5666f321ba87840a40bcd755" }, "occupation" : "technician", "gender" : "F", "age" : "38", "id" : 938, "zip_code" : "55038" } 939 | { "_id" : { "$oid" : "5666f321ba87840a40bcd756" }, "occupation" : "student", "gender" : "F", "age" : "26", "id" : 939, "zip_code" : "33319" } 940 | { "_id" : { "$oid" : "5666f321ba87840a40bcd757" }, "occupation" : "administrator", "gender" : "M", "age" : "32", "id" : 940, "zip_code" : "02215" } 941 | { "_id" : { "$oid" : "5666f321ba87840a40bcd758" }, "occupation" : "student", "gender" : "M", "age" : "20", "id" : 941, "zip_code" : "97229" } 942 | { "_id" : { "$oid" : "5666f321ba87840a40bcd759" }, "occupation" : "librarian", "gender" : "F", "age" : "48", "id" : 942, "zip_code" : "78209" } 943 | { "_id" : { "$oid" : "5666f321ba87840a40bcd75a" }, "occupation" : "student", "gender" : "M", "age" : "22", "id" : 943, "zip_code" : "77841" } 944 | { "_id" : { "$oid" : "56acd7fd135998708ec5df3d" }, "age" : 23, "gender" : "F", "name" : "dreamcity", "occupation" : "student", "user_id" : 1 } 945 | -------------------------------------------------------------------------------- /engine/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/engine/__init__.py -------------------------------------------------------------------------------- /engine/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/engine/__init__.pyc -------------------------------------------------------------------------------- /engine/rec_engine.py: -------------------------------------------------------------------------------- 1 | import os 2 | from pyspark.mllib.recommendation import ALS 3 | from pyspark.mllib.recommendation import MatrixFactorizationModel 4 | import logging 5 | import json 6 | logging.basicConfig(level=logging.INFO) 7 | logger = logging.getLogger(__name__) 8 | 9 | 10 | def get_counts_and_averages(ID_and_ratings_tuple): 11 | """Given a tuple (movieID, ratings_iterable) 12 | returns (movieID, (ratings_count, ratings_avg)) 13 | """ 14 | nratings = len(ID_and_ratings_tuple[1]) 15 | return ID_and_ratings_tuple[0], (nratings, float(sum(x for x in ID_and_ratings_tuple[1]))/nratings) 16 | 17 | 18 | class RecommendationEngine: 19 | """A movie recommendation engine 20 | """ 21 | 22 | def __count_and_average_ratings(self): 23 | """Updates the movies ratings counts from 24 | the current data self.ratings_RDD 25 | """ 26 | logger.info("Counting movie ratings...") 27 | movie_ID_with_ratings_RDD = self.ratings_RDD.map(lambda x: (x[1], x[2])).groupByKey() 28 | movie_ID_with_avg_ratings_RDD = movie_ID_with_ratings_RDD.map(get_counts_and_averages) 29 | self.movies_rating_counts_RDD = movie_ID_with_avg_ratings_RDD.map(lambda x: (x[0], x[1][0])) 30 | 31 | 32 | def __train_model(self): 33 | """Train the ALS model with the current dataset 34 | """ 35 | try: 36 | logger.info("Loading the ALS model...") 37 | # self.model = MatrixFactorizationModel.load(self.sc, "als_model.data") 38 | self.model = MatrixFactorizationModel.load(self.sc, "als_model.data") 39 | except: 40 | logger.info("Training the ALS model...") 41 | self.model = ALS.train(self.ratings_RDD, self.rank, seed=self.seed, 42 | iterations=self.iterations, lambda_=self.regularization_parameter) 43 | self.model.save(self.sc,"als_model.data") 44 | logger.info("ALS model built!") 45 | 46 | 47 | def __predict_ratings(self, user_and_movie_RDD): 48 | """Gets predictions for a given (userID, movieID) formatted RDD 49 | Returns: an RDD with format (movieTitle, movieRating, numRatings) 50 | """ 51 | predicted_RDD = self.model.predictAll(user_and_movie_RDD) 52 | predicted_rating_RDD = predicted_RDD.map(lambda x: (x.product, x.rating)) 53 | predicted_rating_title_and_count_RDD = \ 54 | predicted_rating_RDD.join(self.movies_titles_RDD).join(self.movies_rating_counts_RDD) 55 | predicted_rating_title_and_count_RDD = \ 56 | predicted_rating_title_and_count_RDD.map(lambda r: (r[1][0][1], r[1][0][0], r[1][1])) 57 | 58 | return predicted_rating_title_and_count_RDD 59 | 60 | def add_ratings(self, ratings): 61 | """Add additional movie ratings in the format (user_id, movie_id, rating) 62 | """ 63 | # Convert ratings to an RDD 64 | new_ratings_RDD = self.sc.parallelize(ratings) 65 | # Add new ratings to the existing ones 66 | self.ratings_RDD = self.ratings_RDD.union(new_ratings_RDD) 67 | # Re-compute movie ratings count 68 | self.__count_and_average_ratings() 69 | # Re-train the ALS model with the new ratings 70 | self.__train_model() 71 | 72 | return ratings 73 | 74 | def get_ratings_for_movie_ids(self, user_id, movie_ids): 75 | """Given a user_id and a list of movie_ids, predict ratings for them 76 | """ 77 | requested_movies_RDD = self.sc.parallelize(movie_ids).map(lambda x: (user_id, x)) 78 | # Get predicted ratings 79 | ratings = self.__predict_ratings(requested_movies_RDD).collect() 80 | 81 | return ratings 82 | 83 | def get_top_ratings(self, user_id, movies_count): 84 | """Recommends up to movies_count top unrated movies to user_id 85 | """ 86 | # Get pairs of (userID, movieID) for user_id unrated movies 87 | user_unrated_movies_RDD = self.movies_RDD.filter(lambda rating: not rating[1]==user_id).map(lambda x: (user_id, x[0])) 88 | # Get predicted ratings 89 | ratings = self.__predict_ratings(user_unrated_movies_RDD).filter(lambda r: r[2]>=25).takeOrdered(movies_count, key=lambda x: -x[1]) 90 | 91 | return ratings 92 | 93 | def __init__(self, sc, dataset_path): 94 | """Init the recommendation engine given a Spark context and a dataset path 95 | """ 96 | 97 | logger.info("Starting up the Recommendation Engine: ") 98 | 99 | self.sc = sc 100 | 101 | # Load ratings data for later use 102 | logger.info("Loading Ratings data...") 103 | ratings_file_path = os.path.join(dataset_path, 'ratings.csv') 104 | logger.info("ratings_file_path: %s"%ratings_file_path) 105 | ratings_raw_RDD = self.sc.textFile(ratings_file_path) 106 | self.ratings_RDD = ratings_raw_RDD.map(lambda line:json.loads(line)).map(lambda tokens: (int(tokens["user_id"]),int(tokens["movie_id"]),float(tokens["rate_score"]))).cache() 107 | 108 | # ratings_raw_data_header = ratings_raw_RDD.take(1)[0] 109 | # self.ratings_RDD = ratings_raw_RDD.filter(lambda line: line!=ratings_raw_data_header)\ 110 | # .map(lambda line: line.split(",")).map(lambda tokens: (int(tokens[0]),int(tokens[1]),float(tokens[2]))).cache() 111 | # Load movies data for later use 112 | logger.info("Loading Movies data...") 113 | movies_file_path = os.path.join(dataset_path, 'movies.csv') 114 | movies_raw_RDD = self.sc.textFile(movies_file_path) 115 | self.movies_RDD = movies_raw_RDD.map(lambda line:json.loads(line)).map(lambda tokens: (int(tokens["id"]),tokens["title"],"|".join(str(tokens["genre"])))).cache() 116 | self.movies_titles_RDD = self.movies_RDD.map(lambda x: (int(x[0]),x[1])).cache() 117 | # movies_raw_data_header = movies_raw_RDD.take(1)[0] 118 | # self.movies_RDD = movies_raw_RDD.filter(lambda line: line!=movies_raw_data_header)\ 119 | # .map(lambda line: line.split 120 | # (",")).map(lambda tokens: (int(tokens[0]),tokens[1],tokens[2])).cache() 121 | # self.movies_titles_RDD = self.movies_RDD.map(lambda x: (int(x[0]),x[1])).cache() 122 | # Pre-calculate movies ratings counts 123 | self.__count_and_average_ratings() 124 | 125 | # Train the model 126 | self.rank = 8 127 | self.seed = 5L 128 | self.iterations = 10 129 | self.regularization_parameter = 0.1 130 | self.__train_model() 131 | -------------------------------------------------------------------------------- /engine/rec_engine.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/engine/rec_engine.pyc -------------------------------------------------------------------------------- /home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/home.png -------------------------------------------------------------------------------- /recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/recommend.png -------------------------------------------------------------------------------- /server.py: -------------------------------------------------------------------------------- 1 | import time, sys, cherrypy, os 2 | from paste.translogger import TransLogger 3 | from webapp import create_app 4 | from pyspark import SparkContext, SparkConf 5 | # path = "/home/dreamcity/Project/myproject/venv/lib/python2.7/site-packages" 6 | # sys.path.append(path) 7 | def init_spark_context(): 8 | # load spark context 9 | conf = SparkConf().setAppName("movie_recommendation-server") 10 | # IMPORTANT: pass aditional Python modules to each worker 11 | # sc = SparkContext(conf=conf, pyFiles=['rec_engine.py', 'app.py']) 12 | sc = SparkContext(conf=conf) 13 | 14 | return sc 15 | 16 | 17 | def run_server(app): 18 | # Enable WSGI access logging via Paste 19 | app_logged = TransLogger(app) 20 | 21 | # Mount the WSGI callable object (app) on the root directory 22 | cherrypy.tree.graft(app_logged, '/') 23 | 24 | # Set the configuration of the web server 25 | cherrypy.config.update({ 26 | 'engine.autoreload.on': True, 27 | 'log.screen': True, 28 | 'server.socket_port': 5432, 29 | 'server.socket_host': '127.0.0.1' 30 | }) 31 | 32 | # Start the CherryPy WSGI web server 33 | cherrypy.engine.start() 34 | cherrypy.engine.block() 35 | 36 | 37 | if __name__ == "__main__": 38 | # Init spark context and load libraries 39 | sc = init_spark_context() 40 | dataset_path = os.path.join('dataset','data_model') 41 | app = create_app(sc, dataset_path) 42 | 43 | # start web server 44 | run_server(app) 45 | 46 | -------------------------------------------------------------------------------- /server.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/server.pyc -------------------------------------------------------------------------------- /start_sh.sh: -------------------------------------------------------------------------------- 1 | /usr/local/spark-1.5.1-bin-hadoop2.6/bin/spark-submit server.py 2 | -------------------------------------------------------------------------------- /webapp/__init__.py: -------------------------------------------------------------------------------- 1 | from flask import Flask 2 | from flask.ext.bootstrap import Bootstrap 3 | from flask.ext.moment import Moment 4 | from engine.rec_engine import RecommendationEngine 5 | 6 | bootstrap = Bootstrap() 7 | moment = Moment() 8 | 9 | def create_app(spark_context, dataset_path): 10 | global recommendation_engine 11 | recommendation_engine = RecommendationEngine(spark_context, dataset_path) 12 | 13 | app = Flask(__name__) 14 | app.config.from_object('config') 15 | 16 | bootstrap.init_app(app) 17 | moment.init_app(app) 18 | 19 | from .main import main as main_blueprint 20 | app.register_blueprint(main_blueprint) 21 | 22 | return app 23 | 24 | -------------------------------------------------------------------------------- /webapp/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/__init__.pyc -------------------------------------------------------------------------------- /webapp/main/__init__.py: -------------------------------------------------------------------------------- 1 | from flask import Blueprint 2 | 3 | main = Blueprint('main', __name__) 4 | 5 | from . import users, movies, recommend 6 | # from . import recommend 7 | -------------------------------------------------------------------------------- /webapp/main/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/main/__init__.pyc -------------------------------------------------------------------------------- /webapp/main/forms.py: -------------------------------------------------------------------------------- 1 | from flask.ext.wtf import Form 2 | from wtforms import IntegerField,StringField, SubmitField,RadioField 3 | from wtforms.validators import Required, Length, Email, Regexp 4 | from wtforms import ValidationError 5 | 6 | 7 | 8 | class EditRateForm(Form): 9 | rate_score = IntegerField("Rate_score",validators=[Required()]) 10 | submit = SubmitField('Submit') 11 | def validate_rate_score(self,field): 12 | if field.data<1 or field.data>5: 13 | raise ValidationError('Rate score must between 1 to 5.') 14 | 15 | 16 | class EditUserForm(Form): 17 | """docstring for EditUserForm""" 18 | name = StringField('name', validators=[ 19 | Required(), Length(1, 64), Regexp('^[A-Za-z][A-Za-z0-9_.]*$', 0, 20 | 'Usernames must have only letters, ' 21 | 'numbers, dots or underscores')]) 22 | age = IntegerField("age",validators=[Required()]) 23 | gender = RadioField("gender_info",choices=[('F','Female'),('M','Male')]) 24 | occupation = StringField('occupation', validators=[ 25 | Required(), Length(1, 64), Regexp('^[A-Za-z][A-Za-z0-9_.]*$', 0, 26 | 'Occupation must have only letters, ' 27 | 'numbers, dots or underscores')]) 28 | submit = SubmitField('Submit') 29 | 30 | class EditMovieForm(Form): 31 | """docstring for EditMovieForm""" 32 | title = StringField('title', validators=[Required()]) 33 | imdb_url = StringField('imdb_url', validators=[Required()]) 34 | genre = StringField('genre', validators=[Required(),Regexp('^(?:[01]?\d-)*[01]?\d$',0, 35 | 'genre must be xx-xx-xx,xx<19 ')]) 36 | # release_time = StringField('release_time',validators=[Regexp('^\d{4}-\d{2}-\d{2}\s*(?:\d{2}:\d{2}:\d{2})?$',0, 37 | # 'release_time must be xxxx-xx-xx 00:00:00 ')]) 38 | release_time = StringField('release_time',validators=[Regexp('^\d{4}-\d{2}-\d{2}$',0, 39 | 'release_time must be xxxx-xx-xx')]) 40 | submit = SubmitField('Submit') 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /webapp/main/forms.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/main/forms.pyc -------------------------------------------------------------------------------- /webapp/main/movies.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | #-*- coding: utf-8 -*- 3 | # from app import app 4 | from . import main 5 | from flask import Flask,current_app,render_template,request,redirect,url_for 6 | from flask.ext.paginate import Pagination 7 | from pymongo import ASCENDING,DESCENDING 8 | from forms import EditMovieForm 9 | # import datetime 10 | 11 | def get_page_items(): 12 | page = int(request.args.get('page', 1)) 13 | per_page = request.args.get('per_page') 14 | if not per_page: 15 | per_page = current_app.config.get('PER_PAGE', 10) 16 | else: 17 | per_page = int(per_page) 18 | 19 | offset = (page - 1) * per_page 20 | return page, per_page, offset 21 | 22 | @main.route("/movies") 23 | def show_movies(): 24 | total = current_app.config['TOTAL_MOVIES'] 25 | if not total: 26 | total = current_app.config['MOVIES_COLLECTION'].find().count() 27 | page, per_page, offset = get_page_items() 28 | if page * per_page > total: 29 | movies_info = "" 30 | else: 31 | movie_cursor = current_app.config['MOVIES_COLLECTION'].find({},{"_id":0}).skip(offset).limit(per_page) 32 | genre_info = current_app.config['GENRE_COLLECTION'].find_one({},{"_id":0}) 33 | movies_info= list([]) 34 | for item in movie_cursor: 35 | item_dict = dict({}) 36 | item_dict["id"] = int(item["id"]) 37 | item_dict["title"] = item["title"] 38 | genre_desc = "" 39 | for x in item["genre"]: 40 | desc = genre_info[str(x)] 41 | genre_desc += desc + "|" 42 | item_dict["genre"] = genre_desc[:-1] 43 | movies_info.append(item_dict) 44 | pagination = Pagination(page=page,per_page=per_page,total=total,css_framework='bootstrap3',record_name="movies_info") 45 | return render_template('movies.html', total = total,movies=movies_info,page=page,per_page=per_page,pagination=pagination) 46 | 47 | @main.route("/movie/") 48 | def show_movie_f_id(movie_id): 49 | movie = current_app.config['MOVIES_COLLECTION'].find_one({"id":movie_id},{"_id":0}) 50 | if not movie:return redirect(url_for('.show_movies')) 51 | genre_info = current_app.config['GENRE_COLLECTION'].find_one({},{"_id":0}) 52 | movie["genre_desc"] = "" 53 | for x in movie["genre"]: 54 | desc = genre_info[str(x)] 55 | movie["genre_desc"] += desc + "|" 56 | movie["genre_desc"] = movie["genre_desc"][:-1] 57 | 58 | movie_pattern = {} 59 | movie_pattern["hot_score"] = current_app.config['RATE_COLLECTION'].find({"movie_id":movie_id}).count() 60 | 61 | movie_pattern["total_rate_nums"] = current_app.config['RATE_COLLECTION'].find().count() 62 | 63 | avg_rate_cursor = current_app.config['RATE_COLLECTION'].aggregate([{"$group":{"_id":"$movie_id","avg":{"$avg":"$rate_score"}}},{"$match":{"_id":movie_id}}]) 64 | avg_rate = "" 65 | for x in avg_rate_cursor: 66 | avg_rate = x["avg"] 67 | movie_pattern["avg_rate"] = avg_rate 68 | return render_template('movie.html',movie=movie,movie_pattern=movie_pattern) 69 | 70 | @main.route("/movie/add") 71 | def add_movie(): 72 | max_id_cursor = current_app.config['MOVIES_COLLECTION'].find({},{"id":1,"_id":0}).sort("id",DESCENDING).limit(1) 73 | max_id = 0 74 | for x in max_id_cursor: 75 | max_id = x["id"] 76 | movie_max_id = int(max_id) + 1 77 | return redirect(url_for('.edit_movie',movie_id = movie_max_id)) 78 | 79 | @main.route("/movie//edit") 80 | def edit_movie(movie_id): 81 | return redirect(url_for('.update_movie_info',movie_id=movie_id)) 82 | 83 | @main.route("/edit/movie",methods=['GET', 'POST']) 84 | def update_movie_info(): 85 | movie_id = int(request.args.get('movie_id',0)) 86 | if movie_id : 87 | form = EditMovieForm() 88 | if form.validate_on_submit(): 89 | movie_info = {} 90 | movie_info["title"] = form.title.data 91 | movie_info["imdb_url"] = form.imdb_url.data 92 | movie_info["release_time"] = form.release_time.data 93 | genre = form.genre.data 94 | genre_code = [0]*19 95 | genre_list = genre.split("-") 96 | # print genre_list,genre_code[3] 97 | for x in genre_list: 98 | genre_code[int(x)] = 1 99 | movie_info["genre"] = genre_list 100 | movie_info["genre_code"] = "".join(str(x) for x in genre_code) 101 | # print "movie_info",movie_info 102 | current_app.config['MOVIES_COLLECTION'].update_one({"id":movie_id},{'$set':movie_info},upsert = True) 103 | return redirect(url_for('.show_movie_f_id',movie_id = movie_id)) 104 | return render_template('edit_movie_form.html',form=form) 105 | return redirect(url_for('.show_movie_f_id',movie_id = movie_id)) 106 | 107 | @main.route("/movie//delete") 108 | def delete_movie(movie_id): 109 | current_app.config['MOVIES_COLLECTION'].find_one_and_delete({"id":movie_id}) 110 | return redirect(url_for('.show_movies')) 111 | -------------------------------------------------------------------------------- /webapp/main/movies.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/main/movies.pyc -------------------------------------------------------------------------------- /webapp/main/recommend.py: -------------------------------------------------------------------------------- 1 | import json 2 | from . import main 3 | from .. import recommendation_engine 4 | 5 | import logging 6 | logging.basicConfig(level=logging.INFO) 7 | logger = logging.getLogger(__name__) 8 | 9 | from flask import Flask, current_app,render_template 10 | 11 | @main.route("//recommend", methods=["GET"]) 12 | def user_recommend(user_id): 13 | recommend_nums = current_app.config['RECOMMEND_NUMS'] 14 | if not recommend_nums: 15 | recommend_nums = 5 16 | logger.debug("User %s TOP ratings requested", user_id) 17 | top_ratings = recommendation_engine.get_top_ratings(user_id,recommend_nums) 18 | genre_info = current_app.config['GENRE_COLLECTION'].find_one({},{"_id":0}) 19 | recommend_info = [] 20 | for item in top_ratings: 21 | movie_info = {} 22 | title = item[0] 23 | movie = current_app.config['MOVIES_COLLECTION'].find_one({"title":title},{"_id":0}) 24 | movie_info["id"] = movie["id"] 25 | movie_info["title"] = title 26 | # movie_info["genre"] = movie["genre"] 27 | genre_desc = "" 28 | for x in movie["genre"]: 29 | desc = genre_info[str(x)] 30 | genre_desc += desc + "|" 31 | movie_info["genre"] = genre_desc[:-1] 32 | 33 | movie_info["rec_score"] = item[1] 34 | movie_info["rank"] = item[2] 35 | recommend_info.append(movie_info) 36 | return render_template('recommends.html', user_id=user_id,movies=recommend_info) 37 | 38 | # return json.dumps(top_ratings) 39 | 40 | # @main.route("//ratings/top/", methods=["GET"]) 41 | # def top_ratings(user_id, count): 42 | # logger.debug("User %s TOP ratings requested", user_id) 43 | # top_ratings = recommendation_engine.get_top_ratings(user_id,count) 44 | # return json.dumps(top_ratings) 45 | 46 | @main.route("//ratings/", methods=["GET"]) 47 | def movie_ratings(user_id, movie_id): 48 | logger.debug("User %s rating requested for movie %s", user_id, movie_id) 49 | ratings = recommendation_engine.get_ratings_for_movie_ids(user_id, [movie_id]) 50 | return json.dumps(ratings) 51 | 52 | 53 | # @main.route("//ratings", methods = ["POST"]) 54 | # def add_ratings(user_id): 55 | # # get the ratings from the Flask POST request object 56 | # ratings_list = request.form.keys()[0].strip().split("\n") 57 | # ratings_list = map(lambda x: x.split(","), ratings_list) 58 | # # create a list with the format required by the negine (user_id, movie_id, rating) 59 | # ratings = map(lambda x: (user_id, int(x[0]), float(x[1])), ratings_list) 60 | # # add them to the model using then engine API 61 | # recommendation_engine.add_ratings(ratings) 62 | 63 | # return json.dumps(ratings) -------------------------------------------------------------------------------- /webapp/main/recommend.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/main/recommend.pyc -------------------------------------------------------------------------------- /webapp/main/users.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | #-*- coding: utf-8 -*- 3 | # from app import app 4 | from . import main 5 | from flask import Flask,current_app,render_template,request,redirect,url_for 6 | from flask.ext.paginate import Pagination 7 | from pymongo import ASCENDING,DESCENDING 8 | import time 9 | from forms import EditRateForm,EditUserForm 10 | 11 | @main.route("/",methods=["GET"]) 12 | def index(): 13 | return render_template('index.html') 14 | # return render_template('test.html') 15 | 16 | @main.route("/users",methods=["GET"]) 17 | def show_users(): 18 | total = current_app.config['TOTAL_USERS'] 19 | if not total: 20 | total = current_app.config['USERS_COLLECTION'].find().count() 21 | page, per_page, offset = get_page_items() 22 | if page * per_page > total: 23 | users_info = "" 24 | else: 25 | users_info = current_app.config['USERS_COLLECTION'].find({},{"_id":0}).skip(offset).limit(per_page) 26 | pagination = Pagination(page=page,per_page=per_page,total=total,css_framework='bootstrap3',record_name="users_info") 27 | # return render_template('users.html', users=users_info,page=page,per_page=per_page,pagination=pagination) 28 | return render_template('users.html', total = total,users=users_info,pagination=pagination) 29 | 30 | def get_page_items(): 31 | page = int(request.args.get('page', 1)) 32 | per_page = request.args.get('per_page') 33 | if not per_page: 34 | per_page = current_app.config.get('PER_PAGE', 10) 35 | else: 36 | per_page = int(per_page) 37 | 38 | offset = (page - 1) * per_page 39 | return page, per_page, offset 40 | 41 | @main.route("/user/") 42 | def show_user_f_id(user_id): 43 | user = current_app.config['USERS_COLLECTION'].find_one({"id":user_id},{"_id":0}) 44 | user_pattern = {} 45 | user_pattern["rate_nums"] = current_app.config['RATE_COLLECTION'].find({"user_id":user_id}).count() 46 | total_movies = current_app.config['MOVIES_COLLECTION'].find().count() 47 | user_pattern["unrate_nums"] = total_movies - user_pattern["rate_nums"] 48 | avg_rate_cursor = current_app.config['RATE_COLLECTION'].aggregate([{"$group":{"_id":"$user_id","avg":{"$avg":"$rate_score"}}},{"$match":{"_id":user_id}}]) 49 | avg_rate = "" 50 | for x in avg_rate_cursor: 51 | avg_rate = x["avg"] 52 | user_pattern["avg_rate"] = avg_rate 53 | 54 | first_rate_time_cursor = current_app.config['RATE_COLLECTION'].aggregate([{"$group":{"_id":"$user_id","first_rate":{"$min":"$rate_time"}}},{"$match":{"_id":user_id}}]) 55 | first_rate_time = "" 56 | for x in first_rate_time_cursor: 57 | first_rate_time = x["first_rate"] 58 | user_pattern["first_rate_time"] = first_rate_time 59 | 60 | last_rate_time_cursor = current_app.config['RATE_COLLECTION'].aggregate([{"$group":{"_id":"$user_id","last_rate":{"$max":"$rate_time"}}},{"$match":{"_id":user_id}}]) 61 | last_rate_time = "" 62 | for x in last_rate_time_cursor: 63 | last_rate_time = x["last_rate"] 64 | user_pattern["last_rate_time"] = last_rate_time 65 | return render_template('user.html',user=user,user_pattern=user_pattern) 66 | @main.route("/user/add") 67 | def add_user(): 68 | max_id_cursor = current_app.config['USERS_COLLECTION'].find({},{"id":1,"_id":0}).sort("id",DESCENDING).limit(1) 69 | max_id = 0 70 | for x in max_id_cursor: 71 | max_id = x["id"] 72 | user_max_id = int(max_id) + 1 73 | return redirect(url_for('.edit_user',user_id = user_max_id)) 74 | 75 | @main.route("/user//edit") 76 | def edit_user(user_id): 77 | return redirect(url_for('.update_user_info',user_id=user_id)) 78 | 79 | @main.route("/edit/user",methods=['GET', 'POST']) 80 | def update_user_info(): 81 | user_id = int(request.args.get('user_id',0)) 82 | if user_id : 83 | form = EditUserForm() 84 | if form.validate_on_submit(): 85 | user_info = {} 86 | user_info["name"] = form.name.data 87 | user_info["age"] = form.age.data 88 | user_info["gender"] = form.gender.data 89 | user_info["occupation"] = form.occupation.data 90 | current_app.config['USERS_COLLECTION'].update_one({"id":user_id},{'$set':user_info},upsert = True) 91 | return redirect(url_for('.show_user_f_id',user_id = user_id)) 92 | return render_template('edit_user_form.html',form=form) 93 | return redirect(url_for('.show_user_f_id',user_id = user_id)) 94 | 95 | @main.route("/user//delete") 96 | def delete_user(user_id): 97 | current_app.config['USERS_COLLECTION'].find_one_and_delete({"id":user_id}) 98 | return redirect(url_for('.show_users')) 99 | 100 | 101 | @main.route("/user//movies") 102 | def show_u_rela_movies(user_id): 103 | # mode = 0, 未评分的资源 104 | # mode = 1, 已评分的资源 105 | # mode = 2, 推荐的资源 106 | # "/user//movies?mode=0" 107 | # "/user//movies?mode=1" the rated movies 108 | mode = int(request.args.get('mode',0)) 109 | if mode == 1: 110 | total = current_app.config['RATE_COLLECTION'].find({"user_id":user_id}).count() 111 | page, per_page, offset = get_page_items() 112 | pagination = Pagination(page=page,per_page=per_page,total=total,css_framework='bootstrap3',record_name="User rated movie list") 113 | movie_rate_cursor = current_app.config['RATE_COLLECTION'].find({"user_id":user_id},{"movie_id":1,"_id":0,"rate_score":1}).skip(offset).limit(per_page).sort("rate_score",DESCENDING) 114 | genre_info = current_app.config['GENRE_COLLECTION'].find_one({},{"_id":0}) 115 | movies_info = [] 116 | for item in movie_rate_cursor: 117 | item_dict = dict({}) 118 | item_dict["movie_id"] = int(item["movie_id"]) 119 | item_dict["rate_score"] = item["rate_score"] 120 | movie = current_app.config['MOVIES_COLLECTION'].find_one({"id":item_dict["movie_id"]},{"_id":0}) 121 | item_dict["title"] = movie["title"] 122 | # item_dict["genre"] = movie["genre"] 123 | genre_desc = "" 124 | for x in movie["genre"]: 125 | desc = genre_info[str(x)] 126 | genre_desc += desc + "|" 127 | item_dict["genre"] = genre_desc[:-1] 128 | movies_info.append(item_dict) 129 | return render_template('user_rate_movie.html',mode = 1,user_id = user_id, movies=movies_info,page=page,per_page=per_page,pagination=pagination) 130 | elif mode == 0: 131 | total_movies_cursor = current_app.config['MOVIES_COLLECTION'].find({},{"id":1,"_id":0}) 132 | total_movies_list = list([]) 133 | for item in total_movies_cursor: 134 | total_movies_list.append(item["id"]) 135 | 136 | total_movies_num = len(total_movies_list) 137 | page, per_page, offset = get_page_items() 138 | 139 | rate_movie_cursor = current_app.config['RATE_COLLECTION'].find({"user_id":user_id},{"movie_id":1,"_id":0,"rate_score":1}) 140 | rate_movie_list = list([]) 141 | for item in rate_movie_cursor: 142 | rate_movie_list.append(item["movie_id"]) 143 | unrate_movie_list = list(set(total_movies_list)-set(rate_movie_list)) 144 | total = len(unrate_movie_list) 145 | pagination = Pagination(page=page,per_page=per_page,total=total,css_framework='bootstrap3',record_name="User not rated movie list") 146 | unrate_movie_cursor = current_app.config['MOVIES_COLLECTION'].find({"id":{"$in":unrate_movie_list}},{"_id":0}).skip(offset).limit(per_page) 147 | genre_info = current_app.config['GENRE_COLLECTION'].find_one({},{"_id":0}) 148 | movies_info = [] 149 | for item in unrate_movie_cursor: 150 | item_dict = dict({}) 151 | item_dict["movie_id"] = int(item["id"]) 152 | item_dict["title"] = item["title"] 153 | genre_desc = "" 154 | for x in item["genre"]: 155 | desc = genre_info[str(x)] 156 | genre_desc += desc + "|" 157 | item_dict["genre"] = genre_desc[:-1] 158 | movies_info.append(item_dict) 159 | return render_template('user_rate_movie.html',mode = 0,user_id = user_id, movies=movies_info,page=page,per_page=per_page,pagination=pagination) 160 | else: 161 | pass 162 | return redirect(url_for('.show_user_f_id',user_id = movie_id)) 163 | 164 | @main.route("/user//movie//delete") 165 | def relieve_rlea_u_movie(user_id,movie_id): 166 | current_app.config['RATE_COLLECTION'].find_one_and_delete({"user_id":user_id,"movie_id":movie_id}) 167 | return redirect(url_for('.show_u_rela_movies',user_id = user_id,mode=1)) 168 | 169 | #/user/rate/movie?operate=edit&user_id=1&movie_id=1 170 | @main.route("/user/rate/movie") 171 | def update_u_rela_movie(): 172 | operate = request.args.get('operate',"show") 173 | if operate == "edit": 174 | user_id = request.args.get('user_id',0) 175 | movie_id = request.args.get('movie_id',0) 176 | if user_id and movie_id: 177 | return redirect(url_for('.update_rate',user_id=user_id,movie_id=movie_id)) 178 | elif operate == "delete": 179 | user_id = request.args.get('user_id',0) 180 | movie_id = request.args.get('movie_id',0) 181 | if user_id and movie_id: 182 | return redirect(url_for('.relieve_rlea_u_movie',user_id=user_id,movie_id=movie_id)) 183 | else: 184 | pass 185 | # return redirect(url_for('.show_u_rela_movies',user_id = user_id,mode=1)) 186 | return redirect(url_for('.show_user_f_id',user_id = user_id)) 187 | 188 | @main.route("/rate") 189 | def show_rate_info(): 190 | user_id = int(request.args.get('user_id',0)) 191 | movie_id = int(request.args.get('movie_id',0)) 192 | if user_id and movie_id: 193 | rate_info = current_app.config['RATE_COLLECTION'].find_one({"user_id":user_id,"movie_id":movie_id},{"_id":0}) 194 | if rate_info: 195 | movie_info = current_app.config['MOVIES_COLLECTION'].find_one({"id":movie_id},{"_id":0,"title":1}) 196 | movie_title = movie_info["title"] 197 | return render_template('rate.html',rate_info=rate_info,movie_title=movie_title) 198 | return redirect(url_for('.show_user_f_id',user_id = user_id)) 199 | 200 | @main.route("/updaterate",methods=['GET', 'POST']) 201 | def update_rate(): 202 | user_id = int(request.args.get('user_id',0)) 203 | movie_id = int(request.args.get('movie_id',0)) 204 | if user_id and movie_id: 205 | form = EditRateForm() 206 | if form.validate_on_submit(): 207 | rate_score = int(form.rate_score.data) 208 | # return "rate_score"+str(rate_score) 209 | rate_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) 210 | current_app.config['RATE_COLLECTION'].update_one({"user_id":user_id,"movie_id":movie_id},{'$set':{"rate_score":rate_score, "rate_time":rate_time}},upsert = True) 211 | return redirect(url_for('.show_rate_info',user_id = user_id,movie_id = movie_id)) 212 | return render_template('edit_rate_form.html',form=form,user_id=user_id,movie_id=movie_id) 213 | return redirect(url_for('.show_user_f_id',user_id = user_id)) 214 | 215 | -------------------------------------------------------------------------------- /webapp/main/users.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dreamcity/Spark_Movie_recsys/2008a559e895cc31021fbe8ac896c8ab8cb41b94/webapp/main/users.pyc -------------------------------------------------------------------------------- /webapp/templates/base.html: -------------------------------------------------------------------------------- 1 | {% extends "bootstrap/base.html" %} 2 | {% block title %}Movie_RecSys{% endblock %} 3 | 4 | {% block head %} 5 | {{ super() }} 6 | {% endblock %} 7 | 8 | {% block navbar %} 9 | 37 | {% endblock %} 38 | 39 | {% block content %} 40 |
41 | {% for message in get_flashed_messages() %} 42 |
43 | 44 | {{ message }} 45 |
46 | {% endfor %} 47 | {% block page_content %}{% endblock %} 48 | 52 |
53 | {% endblock %} 54 | 55 | {% block scripts %} 56 | {{ super() }} 57 | {{ moment.include_moment() }} 58 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/edit_movie_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% import "bootstrap/wtf.html" as wtf %} 3 | {% block page_content %} 4 | 7 | 8 | {{ wtf.quick_form(form) }} 9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /webapp/templates/edit_rate_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% import "bootstrap/wtf.html" as wtf %} 3 | {% block page_content %} 4 | 7 | 8 | {{ wtf.quick_form(form) }} 9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /webapp/templates/edit_user_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% import "bootstrap/wtf.html" as wtf %} 3 | {% block page_content %} 4 | 7 | 8 | {{ wtf.quick_form(form) }} 9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /webapp/templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}Movie_RecSys{% endblock %} 4 | 5 | {% block page_content %} 6 | 9 | {% endblock %} 10 | 11 | -------------------------------------------------------------------------------- /webapp/templates/movie.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block page_content %} 3 |
4 |

Show the desc info of movie {{ movie.id }}

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 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 |
Id{{ movie.id }}
Title{{ movie.title }}
Imdb_url{{ movie.imdb_url }}
Genre{{ movie.genre_desc }}
Release time{{ movie.release_time }}
Hot score{{ movie_pattern.hot_score }}
Total rate nums{{ movie_pattern.total_rate_nums }}
Avg rate score{{ movie_pattern.avg_rate }}
39 |
40 | {% endblock %} 41 | 42 | {% block scripts %} 43 | {{ super() }} 44 | {{ moment.include_moment() }} 45 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/movies.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block page_content %} 4 |
5 |

The total movie num is {{ total }}

6 |

7 | New Movie 8 |

9 | 10 | 11 | 12 | 13 | 14 | {% for movie in movies %} 15 | 16 | 17 | 18 | 19 | 23 | 24 | {% endfor %} 25 | 26 |
MovieIDTitleGenreIDAction
{{ movie.id }}{{ movie.title }}{{ movie.genre }} 20 | edit 21 | delete 22 |
27 | {{ pagination.info }} 28 | {{ pagination.links }} 29 |
30 | 31 | 32 | {% endblock %} 33 | 34 | {% block scripts %} 35 | {{ super() }} 36 | {{ moment.include_moment() }} 37 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/rate.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block page_content %} 4 |
5 | 6 |

Show the rate info of User {{ rate_info.user_id }} to Movie {{ rate_info.movie_id }}

7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
UserID{{ rate_info.user_id }}
MovieID{{ rate_info.movie_id }}
Movie title{{ movie_title }}
Rate score{{ rate_info.rate_score }}
Rate time{{ rate_info.rate_time }}
29 |
30 | {% endblock %} 31 | 32 | {% block scripts %} 33 | {{ super() }} 34 | {{ moment.include_moment() }} 35 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/recommends.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block page_content %} 4 |
5 |

The recommend result for the User {{ user_id }} :

6 | 7 | 8 | 9 | 10 | 11 | {% for movie in movies %} 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | {% endfor %} 20 | 21 |
MovieIDTitleGenreIDRec_ScoreRate_times
{{ movie.id }}{{ movie.title }}{{ movie.genre }} {{ movie.rec_score }}{{ movie.rank }}
22 |
23 | 24 | {% endblock %} 25 | {% block scripts %} 26 | {{ super() }} 27 | {{ moment.include_moment() }} 28 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/test.html: -------------------------------------------------------------------------------- 1 |

This is a test page

2 |

This is a test page

3 |

This is a test page

4 |

This is a test page

-------------------------------------------------------------------------------- /webapp/templates/user.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block page_content %} 4 |
5 |

Show the desc info of user {{ user.id }}

6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 |
ID{{ user.id }}
Age{{ user.age }}
Gender{{ user.gender }}
Occupation{{ user.occupation }}
RateNums{{ user_pattern.rate_nums }}
UNRateNums{{ user_pattern.unrate_nums }}
AvgRate{{ user_pattern.avg_rate }}
First rate time{{ user_pattern.first_rate_time }}
Last rate time{{ user_pattern.last_rate_time }}
Recommend
47 |
48 | {% endblock %} 49 | 50 | {% block scripts %} 51 | {{ super() }} 52 | {{ moment.include_moment() }} 53 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/user_rate_movie.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block page_content %} 3 | {% if mode == 0 %} 4 |
5 |

Show the Unrated movie list of User {{ user_id }}

6 | 7 | 8 | 9 | 10 | 11 | {% for movie in movies %} 12 | 13 | 14 | 15 | 16 | 17 | 20 | 21 | {% endfor %} 22 | 23 |
#MovieIDTitleGenreAction
{{ loop.index + (page - 1) * per_page }}{{ movie.movie_id }}{{ movie.title }}{{ movie.genre }} 18 |
rate
19 |
24 | {{ pagination.info }} 25 | {{ pagination.links }} 26 |
27 | {% else %} 28 |
29 |

Show the rated movie list of User {{ user_id }}

30 | 31 | 32 | 33 | 34 | 35 | {% for movie in movies %} 36 | 37 | 38 | 39 | 40 | 41 | 42 | 47 | 48 | {% endfor %} 49 | 50 |
#MovieIDTitleGenreRate scoreAction
{{ loop.index + (page - 1) * per_page }}{{ movie.movie_id }}{{ movie.title }}{{ movie.genre }} {{ movie.rate_score }} 43 |
show
44 |
edit
45 |
delete
46 |
51 | {{ pagination.info }} 52 | {{ pagination.links }} 53 |
54 | {% endif %} 55 | 56 | {% endblock %} 57 | 58 | {% block scripts %} 59 | {{ super() }} 60 | {{ moment.include_moment() }} 61 | {% endblock %} -------------------------------------------------------------------------------- /webapp/templates/users.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block page_content %} 4 |
5 |

The total user num is {{ total }}

6 |

7 | New user 8 |

9 | 10 | 11 | 12 | 13 | 14 | {% for user in users %} 15 | 16 | 17 | 18 | 19 | 20 | 24 | 25 | {% endfor %} 26 | 27 |
UserIDGenderAgeOccupationAction
{{ user.id }}{{ user.gender }}{{ user.age }}{{ user.occupation }} 21 | edit 22 | delete 23 |
28 | {{ pagination.info }} 29 | {{ pagination.links }} 30 |
31 | 32 | {% endblock %} 33 | {% block scripts %} 34 | {{ super() }} 35 | {{ moment.include_moment() }} 36 | {% endblock %} --------------------------------------------------------------------------------