{"action":"created","comment":{"url":"https://api.github.com/repos/cognoma/machine-learning/pulls/comments/81779653","pull_request_review_id":2733926,"id":81779653,"diff_hunk":"@@ -0,0 +1,246 @@\n+\r\n+# coding: utf-8\r\n+\r\n+# # Create a logistic regression model to predict gene mutation from gene expression data in TCGA\r\n+\r\n+# In[1]:\r\n+\r\n+import os\r\n+import urllib\r\n+import random\r\n+import warnings\r\n+\r\n+import pandas as pd\r\n+import numpy as np\r\n+import matplotlib.pyplot as plt\r\n+import seaborn as sns\r\n+from sklearn import preprocessing, grid_search\r\n+from sklearn.linear_model import SGDClassifier\r\n+from sklearn.cross_validation import train_test_split\r\n+from sklearn.metrics import roc_auc_score, roc_curve\r\n+from sklearn.pipeline import make_pipeline\r\n+from sklearn.preprocessing import StandardScaler\r\n+from sklearn.feature_selection import SelectKBest\r\n+from statsmodels.robust.scale import mad\r\n+\r\n+\r\n+# In[2]:\r\n+\r\n+get_ipython().magic('matplotlib inline')\r\n+plt.style.use('seaborn-notebook')\r\n+\r\n+\r\n+# ## Specify model configuration\r\n+\r\n+# In[3]:\r\n+\r\n+# Parameter Sweep for Hyperparameters\r\n+n_feature_kept = 500\r\n+param_fixed = {\r\n+    'loss': 'log',\r\n+    'penalty': 'elasticnet',\r\n+}\r\n+param_grid = {\r\n+    'alpha': [10 ** x for x in range(-6, 1)],\r\n+    'l1_ratio': [0, 0.05, 0.1, 0.2, 0.5, 0.8, 0.9, 0.95, 1],\r\n+}\r\n+\r\n+\r\n+# *Here is some [documentation](http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.SGDClassifier.html) regarding the classifier and hyperparameters*\r\n+# \r\n+# *Here is some [information](https://ghr.nlm.nih.gov/gene/TP53) about TP53*\r\n+\r\n+# ## Load Data\r\n+\r\n+# In[4]:\r\n+\r\n+get_ipython().run_cell_magic('time', '', \"path = os.path.join('download', 'expression-matrix.tsv.bz2')\\nX = pd.read_table(path, index_col=0)\")\r\n+\r\n+\r\n+# In[5]:\r\n+\r\n+get_ipython().run_cell_magic('time', '', \"path = os.path.join('download', 'mutation-matrix.tsv.bz2')\\nY = pd.read_table(path, index_col=0)\")\r\n+\r\n+\r\n+# In[6]:\r\n+\r\n+# GENES\r\n+\r\n+genes_LungCancer = {\r\n+    '207': 'AKT1', \r\n+    '238': 'ALK',  \r\n+    '673': 'BRAF', \r\n+    '4921':'DDR2',\r\n+    '1956':'EGFR',\r\n+    '2064':'ERBB2',\r\n+    '3845':'KRAS',\r\n+    '5604':'MAP2K1',\r\n+    '4893':'NRAS',\r\n+    '5290':'PIK3CA',\r\n+    '5728':'PTEN',\r\n+    '5979':'RET',\r\n+    '6016':'RIT1',\r\n+    '6098':'ROS1',\r\n+}\r\n+\r\n+genes_TumorSuppressors = {\r\n+    '324': 'APC',  \r\n+    '672': 'BRCA1',  \r\n+    '675': 'BRCA2',\r\n+    '1029':'CDKN2A',\r\n+    '1630':'DCC',\r\n+    '4089':'SMAD4',\r\n+    '4087':'SMAD2',\r\n+    '4221':'MEN1',\r\n+    '4763':'NF1',\r\n+    '4771':'NF2',\r\n+    '7157':'TP53', \r\n+    '5728':'PTEN', \r\n+    '5925':'Rb',\r\n+    '7428':'VHL',\r\n+    '7486':'WRN',\r\n+    '7490':'WT1',\r\n+}\r\n+\r\n+list_of_genes = list(genes_LungCancer.keys()) + list(genes_TumorSuppressors.keys())\r\n+\r\n+gene_symbols = list(genes_LungCancer.values()) + list(genes_TumorSuppressors.values())\r\n+\r\n+AUROCS_train = []\r\n+AUROCS_test = []\r\n+p = []\r\n+\r\n+\r\n+# In[7]:\r\n+\r\n+for GENE in list_of_genes:\r\n+    \r\n+    y = Y[GENE]\r\n+    # Here are the percentage of tumors with NF1\r\n+    per = y.value_counts(True)\r\n+    # Set aside 10% of the data for testing, this can only be done where the number of mutations is large enough\r\n+    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.1, random_state=0)\r\n+    'Size: {:,} features, {:,} training samples, {:,} testing samples'.format(len(X.columns), len(X_train), len(X_test))\r\n+    def fs_mad(x, y):\r\n+        \"\"\"    \r\n+        Get the median absolute deviation (MAD) for each column of x\r\n+        \"\"\"\r\n+        scores = mad(x) \r\n+        return scores, np.array([np.NaN]*len(scores))\r\n+\r\n+    # select the top features with the highest MAD\r\n+    feature_select = SelectKBest(fs_mad, k=n_feature_kept)\r\n+    # Include loss='log' in param_grid doesn't work with pipeline somehow\r\n+    clf = SGDClassifier(random_state=0, class_weight='balanced',\r\n+                    loss=param_fixed['loss'], penalty=param_fixed['penalty'])\r\n+\r\n+    # joblib is used to cross-validate in parallel by setting `n_jobs=-1` in GridSearchCV\r\n+    # Supress joblib warning. See https://github.com/scikit-learn/scikit-learn/issues/6370\r\n+    warnings.filterwarnings('ignore', message='Changing the shape of non-C contiguous array')\r\n+    clf_grid = grid_search.GridSearchCV(estimator=clf, param_grid=param_grid, n_jobs=-1, scoring='roc_auc')\r\n+    pipeline = make_pipeline(\r\n+        feature_select,  # Feature selection\r\n+        StandardScaler(),  # Feature scaling\r\n+        clf_grid)\r\n+    # Fit the model (the computationally intensive part)\r\n+    pipeline.fit(X=X_train, y=y_train)\r\n+    best_clf = clf_grid.best_estimator_\r\n+    feature_mask = feature_select.get_support()  # Get a boolean array indicating the selected features\r\n+    y_pred_train = pipeline.decision_function(X_train)\r\n+    y_pred_test = pipeline.decision_function(X_test)\r\n+\r\n+    def get_threshold_metrics(y_true, y_pred):\r\n+        roc_columns = ['fpr', 'tpr', 'threshold']\r\n+        roc_items = zip(roc_columns, roc_curve(y_true, y_pred))\r\n+        roc_df = pd.DataFrame.from_items(roc_items)\r\n+        auroc = roc_auc_score(y_true, y_pred)\r\n+        return {'auroc': auroc, 'roc_df': roc_df}\r\n+\r\n+    metrics_train = get_threshold_metrics(y_train, y_pred_train)\r\n+    metrics_test = get_threshold_metrics(y_test, y_pred_test)\r\n+    \r\n+    AUROCS_train += [metrics_train['auroc']]\r","path":"explore/Classifier_results-different_genes.py","position":162,"original_position":162,"commit_id":"38332ef017eae9958ed98354cfadbd423a9a777d","original_commit_id":"38332ef017eae9958ed98354cfadbd423a9a777d","user":{"login":"dhimmel","id":1117703,"avatar_url":"https://avatars.githubusercontent.com/u/1117703?v=3","gravatar_id":"","url":"https://api.github.com/users/dhimmel","html_url":"https://github.com/dhimmel","followers_url":"https://api.github.com/users/dhimmel/followers","following_url":"https://api.github.com/users/dhimmel/following{/other_user}","gists_url":"https://api.github.com/users/dhimmel/gists{/gist_id}","starred_url":"https://api.github.com/users/dhimmel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dhimmel/subscriptions","organizations_url":"https://api.github.com/users/dhimmel/orgs","repos_url":"https://api.github.com/users/dhimmel/repos","events_url":"https://api.github.com/users/dhimmel/events{/privacy}","received_events_url":"https://api.github.com/users/dhimmel/received_events","type":"User","site_admin":false},"body":"You can use `append` to add a single element to the end of a list:\r\n\r\n```python\r\nAUROCS_train.append(metrics_train['auroc'])\r\n```","created_at":"2016-10-04T15:11:12Z","updated_at":"2016-10-04T15:18:01Z","html_url":"https://github.com/cognoma/machine-learning/pull/52#discussion_r81779653","pull_request_url":"https://api.github.com/repos/cognoma/machine-learning/pulls/52","_links":{"self":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/comments/81779653"},"html":{"href":"https://github.com/cognoma/machine-learning/pull/52#discussion_r81779653"},"pull_request":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/52"}}},"pull_request":{"url":"https://api.github.com/repos/cognoma/machine-learning/pulls/52","id":87375680,"html_url":"https://github.com/cognoma/machine-learning/pull/52","diff_url":"https://github.com/cognoma/machine-learning/pull/52.diff","patch_url":"https://github.com/cognoma/machine-learning/pull/52.patch","issue_url":"https://api.github.com/repos/cognoma/machine-learning/issues/52","number":52,"state":"open","locked":false,"title":"Classifier results for different genes","user":{"login":"brankaj","id":20422849,"avatar_url":"https://avatars.githubusercontent.com/u/20422849?v=3","gravatar_id":"","url":"https://api.github.com/users/brankaj","html_url":"https://github.com/brankaj","followers_url":"https://api.github.com/users/brankaj/followers","following_url":"https://api.github.com/users/brankaj/following{/other_user}","gists_url":"https://api.github.com/users/brankaj/gists{/gist_id}","starred_url":"https://api.github.com/users/brankaj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brankaj/subscriptions","organizations_url":"https://api.github.com/users/brankaj/orgs","repos_url":"https://api.github.com/users/brankaj/repos","events_url":"https://api.github.com/users/brankaj/events{/privacy}","received_events_url":"https://api.github.com/users/brankaj/received_events","type":"User","site_admin":false},"body":"Hi all,\r\n\r\nSince MVP is going to be released soon and open to the public, maybe it would be useful to provide some kind of demo to explain how the package works. It would be like providing tutorial/examples for the first-time users. \r\nAlso, since most likely sklearn.linear_model.SGDClassifier is going to be used as a classifier, it would be nice to see the results for different genes, not only TP53. During the last meeting there was a discussion regarding this. Since it would take really long time to run the code for all genes, maybe it's better to focus on the group of genes that are considered dominant by a certain criteria. \r\nI have submitted pull requests for two files. Both files output AUROCs for a list of genes. First file is a code that determines AUROCs for a list of tumor suppressor genes. The list is not exhaustive and it is copied from https://www.cancerquest.org/cancer-biology/cancer-genes/tumor-suppressors/tumor-suppressor-table. The second code runs the classifier for the genes that are associated with the lung cancer. This list of genes is obtained from https://ghr.nlm.nih.gov/condition/lung-cancer#genes.\r\n\r\nNot sure is this going to be useful to the researchers in the field, but I thought giving it a try. \r\nAll feedback welcome!","created_at":"2016-09-29T19:16:23Z","updated_at":"2016-10-04T15:18:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7388757e5ec6e81b554cf48581416c4e3bd201cf","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/cognoma/machine-learning/pulls/52/commits","review_comments_url":"https://api.github.com/repos/cognoma/machine-learning/pulls/52/comments","review_comment_url":"https://api.github.com/repos/cognoma/machine-learning/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cognoma/machine-learning/issues/52/comments","statuses_url":"https://api.github.com/repos/cognoma/machine-learning/statuses/38332ef017eae9958ed98354cfadbd423a9a777d","head":{"label":"brankaj:brankaj-patch-2","ref":"brankaj-patch-2","sha":"38332ef017eae9958ed98354cfadbd423a9a777d","user":{"login":"brankaj","id":20422849,"avatar_url":"https://avatars.githubusercontent.com/u/20422849?v=3","gravatar_id":"","url":"https://api.github.com/users/brankaj","html_url":"https://github.com/brankaj","followers_url":"https://api.github.com/users/brankaj/followers","following_url":"https://api.github.com/users/brankaj/following{/other_user}","gists_url":"https://api.github.com/users/brankaj/gists{/gist_id}","starred_url":"https://api.github.com/users/brankaj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brankaj/subscriptions","organizations_url":"https://api.github.com/users/brankaj/orgs","repos_url":"https://api.github.com/users/brankaj/repos","events_url":"https://api.github.com/users/brankaj/events{/privacy}","received_events_url":"https://api.github.com/users/brankaj/received_events","type":"User","site_admin":false},"repo":{"id":65333797,"name":"machine-learning","full_name":"brankaj/machine-learning","owner":{"login":"brankaj","id":20422849,"avatar_url":"https://avatars.githubusercontent.com/u/20422849?v=3","gravatar_id":"","url":"https://api.github.com/users/brankaj","html_url":"https://github.com/brankaj","followers_url":"https://api.github.com/users/brankaj/followers","following_url":"https://api.github.com/users/brankaj/following{/other_user}","gists_url":"https://api.github.com/users/brankaj/gists{/gist_id}","starred_url":"https://api.github.com/users/brankaj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brankaj/subscriptions","organizations_url":"https://api.github.com/users/brankaj/orgs","repos_url":"https://api.github.com/users/brankaj/repos","events_url":"https://api.github.com/users/brankaj/events{/privacy}","received_events_url":"https://api.github.com/users/brankaj/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/brankaj/machine-learning","description":"Machine learning for Project Cognoma","fork":true,"url":"https://api.github.com/repos/brankaj/machine-learning","forks_url":"https://api.github.com/repos/brankaj/machine-learning/forks","keys_url":"https://api.github.com/repos/brankaj/machine-learning/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brankaj/machine-learning/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brankaj/machine-learning/teams","hooks_url":"https://api.github.com/repos/brankaj/machine-learning/hooks","issue_events_url":"https://api.github.com/repos/brankaj/machine-learning/issues/events{/number}","events_url":"https://api.github.com/repos/brankaj/machine-learning/events","assignees_url":"https://api.github.com/repos/brankaj/machine-learning/assignees{/user}","branches_url":"https://api.github.com/repos/brankaj/machine-learning/branches{/branch}","tags_url":"https://api.github.com/repos/brankaj/machine-learning/tags","blobs_url":"https://api.github.com/repos/brankaj/machine-learning/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brankaj/machine-learning/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brankaj/machine-learning/git/refs{/sha}","trees_url":"https://api.github.com/repos/brankaj/machine-learning/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brankaj/machine-learning/statuses/{sha}","languages_url":"https://api.github.com/repos/brankaj/machine-learning/languages","stargazers_url":"https://api.github.com/repos/brankaj/machine-learning/stargazers","contributors_url":"https://api.github.com/repos/brankaj/machine-learning/contributors","subscribers_url":"https://api.github.com/repos/brankaj/machine-learning/subscribers","subscription_url":"https://api.github.com/repos/brankaj/machine-learning/subscription","commits_url":"https://api.github.com/repos/brankaj/machine-learning/commits{/sha}","git_commits_url":"https://api.github.com/repos/brankaj/machine-learning/git/commits{/sha}","comments_url":"https://api.github.com/repos/brankaj/machine-learning/comments{/number}","issue_comment_url":"https://api.github.com/repos/brankaj/machine-learning/issues/comments{/number}","contents_url":"https://api.github.com/repos/brankaj/machine-learning/contents/{+path}","compare_url":"https://api.github.com/repos/brankaj/machine-learning/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brankaj/machine-learning/merges","archive_url":"https://api.github.com/repos/brankaj/machine-learning/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brankaj/machine-learning/downloads","issues_url":"https://api.github.com/repos/brankaj/machine-learning/issues{/number}","pulls_url":"https://api.github.com/repos/brankaj/machine-learning/pulls{/number}","milestones_url":"https://api.github.com/repos/brankaj/machine-learning/milestones{/number}","notifications_url":"https://api.github.com/repos/brankaj/machine-learning/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brankaj/machine-learning/labels{/name}","releases_url":"https://api.github.com/repos/brankaj/machine-learning/releases{/id}","deployments_url":"https://api.github.com/repos/brankaj/machine-learning/deployments","created_at":"2016-08-09T22:59:44Z","updated_at":"2016-08-09T22:59:45Z","pushed_at":"2016-10-04T04:52:17Z","git_url":"git://github.com/brankaj/machine-learning.git","ssh_url":"git@github.com:brankaj/machine-learning.git","clone_url":"https://github.com/brankaj/machine-learning.git","svn_url":"https://github.com/brankaj/machine-learning","homepage":null,"size":2020,"stargazers_count":0,"watchers_count":0,"language":"Jupyter Notebook","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"cognoma:master","ref":"master","sha":"cbc0604a2308076303ee0cfb09044846f6f17721","user":{"login":"cognoma","id":20342585,"avatar_url":"https://avatars.githubusercontent.com/u/20342585?v=3","gravatar_id":"","url":"https://api.github.com/users/cognoma","html_url":"https://github.com/cognoma","followers_url":"https://api.github.com/users/cognoma/followers","following_url":"https://api.github.com/users/cognoma/following{/other_user}","gists_url":"https://api.github.com/users/cognoma/gists{/gist_id}","starred_url":"https://api.github.com/users/cognoma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cognoma/subscriptions","organizations_url":"https://api.github.com/users/cognoma/orgs","repos_url":"https://api.github.com/users/cognoma/repos","events_url":"https://api.github.com/users/cognoma/events{/privacy}","received_events_url":"https://api.github.com/users/cognoma/received_events","type":"Organization","site_admin":false},"repo":{"id":63727862,"name":"machine-learning","full_name":"cognoma/machine-learning","owner":{"login":"cognoma","id":20342585,"avatar_url":"https://avatars.githubusercontent.com/u/20342585?v=3","gravatar_id":"","url":"https://api.github.com/users/cognoma","html_url":"https://github.com/cognoma","followers_url":"https://api.github.com/users/cognoma/followers","following_url":"https://api.github.com/users/cognoma/following{/other_user}","gists_url":"https://api.github.com/users/cognoma/gists{/gist_id}","starred_url":"https://api.github.com/users/cognoma/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cognoma/subscriptions","organizations_url":"https://api.github.com/users/cognoma/orgs","repos_url":"https://api.github.com/users/cognoma/repos","events_url":"https://api.github.com/users/cognoma/events{/privacy}","received_events_url":"https://api.github.com/users/cognoma/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cognoma/machine-learning","description":"Machine learning for Project Cognoma","fork":false,"url":"https://api.github.com/repos/cognoma/machine-learning","forks_url":"https://api.github.com/repos/cognoma/machine-learning/forks","keys_url":"https://api.github.com/repos/cognoma/machine-learning/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cognoma/machine-learning/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cognoma/machine-learning/teams","hooks_url":"https://api.github.com/repos/cognoma/machine-learning/hooks","issue_events_url":"https://api.github.com/repos/cognoma/machine-learning/issues/events{/number}","events_url":"https://api.github.com/repos/cognoma/machine-learning/events","assignees_url":"https://api.github.com/repos/cognoma/machine-learning/assignees{/user}","branches_url":"https://api.github.com/repos/cognoma/machine-learning/branches{/branch}","tags_url":"https://api.github.com/repos/cognoma/machine-learning/tags","blobs_url":"https://api.github.com/repos/cognoma/machine-learning/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cognoma/machine-learning/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cognoma/machine-learning/git/refs{/sha}","trees_url":"https://api.github.com/repos/cognoma/machine-learning/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cognoma/machine-learning/statuses/{sha}","languages_url":"https://api.github.com/repos/cognoma/machine-learning/languages","stargazers_url":"https://api.github.com/repos/cognoma/machine-learning/stargazers","contributors_url":"https://api.github.com/repos/cognoma/machine-learning/contributors","subscribers_url":"https://api.github.com/repos/cognoma/machine-learning/subscribers","subscription_url":"https://api.github.com/repos/cognoma/machine-learning/subscription","commits_url":"https://api.github.com/repos/cognoma/machine-learning/commits{/sha}","git_commits_url":"https://api.github.com/repos/cognoma/machine-learning/git/commits{/sha}","comments_url":"https://api.github.com/repos/cognoma/machine-learning/comments{/number}","issue_comment_url":"https://api.github.com/repos/cognoma/machine-learning/issues/comments{/number}","contents_url":"https://api.github.com/repos/cognoma/machine-learning/contents/{+path}","compare_url":"https://api.github.com/repos/cognoma/machine-learning/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cognoma/machine-learning/merges","archive_url":"https://api.github.com/repos/cognoma/machine-learning/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cognoma/machine-learning/downloads","issues_url":"https://api.github.com/repos/cognoma/machine-learning/issues{/number}","pulls_url":"https://api.github.com/repos/cognoma/machine-learning/pulls{/number}","milestones_url":"https://api.github.com/repos/cognoma/machine-learning/milestones{/number}","notifications_url":"https://api.github.com/repos/cognoma/machine-learning/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cognoma/machine-learning/labels{/name}","releases_url":"https://api.github.com/repos/cognoma/machine-learning/releases{/id}","deployments_url":"https://api.github.com/repos/cognoma/machine-learning/deployments","created_at":"2016-07-19T21:03:15Z","updated_at":"2016-10-02T14:11:26Z","pushed_at":"2016-10-04T04:52:17Z","git_url":"git://github.com/cognoma/machine-learning.git","ssh_url":"git@github.com:cognoma/machine-learning.git","clone_url":"https://github.com/cognoma/machine-learning.git","svn_url":"https://github.com/cognoma/machine-learning","homepage":null,"size":7786,"stargazers_count":3,"watchers_count":3,"language":"Jupyter Notebook","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":21,"mirror_url":null,"open_issues_count":23,"forks":21,"open_issues":23,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/52"},"html":{"href":"https://github.com/cognoma/machine-learning/pull/52"},"issue":{"href":"https://api.github.com/repos/cognoma/machine-learning/issues/52"},"comments":{"href":"https://api.github.com/repos/cognoma/machine-learning/issues/52/comments"},"review_comments":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/52/comments"},"review_comment":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cognoma/machine-learning/pulls/52/commits"},"statuses":{"href":"https://api.github.com/repos/cognoma/machine-learning/statuses/38332ef017eae9958ed98354cfadbd423a9a777d"}}}}
{"actor":{"display_login":"dhimmel"}}