{"action":"created","comment":{"url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/comments/187817144","pull_request_review_id":119670294,"id":187817144,"diff_hunk":"@@ -0,0 +1,176 @@\n+from logging import getLogger\n+import os\n+import shutil\n+\n+import numpy as np\n+from chainer.dataset import download\n+\n+from chainer_chemistry.datasets.numpy_tuple_dataset import NumpyTupleDataset\n+from chainer_chemistry.dataset.parsers.csv_file_parser import CSVFileParser\n+from chainer_chemistry.dataset.preprocessors.atomic_number_preprocessor import AtomicNumberPreprocessor  # NOQA\n+from chainer_chemistry.datasets.molnet.molnet_config import molnet_default_config # NOQA\n+\n+_root = 'pfnet/chainer/molnet'\n+\n+\n+def get_molnet_dataset(dataset_name, preprocessor=None, labels=None,\n+                       split='random', frac_train=.8, frac_valid=.1,\n+                       frac_test=.1, seed=777, return_smiles=False,\n+                       target_index=None):\n+    \"\"\"Downloads, caches and preprocess MoleculeNet dataset.\n+\n+    Args:\n+        dataset_name (str): MoleculeNet dataset name. If you want to know the\n+            detail of MoleculeNet, please refer to\n+            `official site <http://moleculenet.ai/datasets-1>`_\n+        preprocessor (BasePreprocessor): Preprocessor.\n+            This sould be chose base on the network to be trained.\n+            If it is None, default `AtomicNumberPreprocessor` is used.\n+        labels (str or list): List of target labels.\n+        return_smiles (bool): If set to ``True``,\n+            smiles array is also returned.\n+        target_index (list or None): target index list to partially extract\n+            dataset. If `None` (default), all examples are parsed.\n+    Returns (dict):\n+        dictionary that contains dataset that is already splitted into train,\n+        valid and test dataset and 1-d numpy array with dtype=object(string)\n+        which is a vector of smiles for each example or `None`.\n+\n+    \"\"\"\n+    assert dataset_name in molnet_default_config\n+    dataset_config = molnet_default_config[dataset_name]\n+    labels = labels or dataset_config['tasks']\n+    if isinstance(labels, str):\n+        labels = [labels, ]\n+\n+    if preprocessor is None:\n+        preprocessor = AtomicNumberPreprocessor()\n+\n+    if dataset_config['task_type'] == 'regression':\n+        def postprocess_label(label_list):\n+            return np.asarray(label_list, dtype=np.float32)\n+    elif dataset_config['task_type'] == 'classification':\n+        def postprocess_label(label_list):\n+            label_list = np.asarray(label_list)\n+            label_list[np.isnan(label_list)] = -1\n+            return label_list.astype(np.int32)\n+\n+    parser = CSVFileParser(preprocessor, labels=labels,\n+                           smiles_col=dataset_config['smiles_columns'],\n+                           postprocess_label=postprocess_label)\n+    if dataset_config['dataset_type'] == 'one_file_csv':\n+        result = parser.parse(get_molnet_filepath(dataset_name),\n+                              return_smiles=return_smiles,\n+                              target_index=target_index)\n+        # TODO(motoki): splitting function or class\n+        dataset = result['dataset']\n+        if split == 'random':\n+            perm = np.random.permutation(len(dataset))\n+            dataset = NumpyTupleDataset(*dataset.features[perm])\n+            train_data_size = int(len(dataset) * frac_train)\n+            valid_data_size = int(len(dataset) * frac_valid)\n+            train = NumpyTupleDataset(*dataset.features[:train_data_size])\n+            valid = NumpyTupleDataset(*dataset.features[train_data_size:\n+                                                        train_data_size +\n+                                                        valid_data_size])\n+            test = NumpyTupleDataset(*dataset.features[train_data_size +\n+                                                       valid_data_size:])\n+\n+            result['dataset'] = (train, valid, test)\n+            if return_smiles:\n+                smiles = result['smiles'][perm]\n+                train_smiles = smiles[:train_data_size]\n+                valid_smiles = smiles[train_data_size:train_data_size +\n+                                      valid_data_size]\n+                test_smiles = smiles[train_data_size + valid_data_size:]\n+                result['smiles'] = (train_smiles, valid_smiles, test_smiles)\n+            else:\n+                result['smiles'] = None\n+        else:\n+            raise NotImplementedError\n+    elif dataset_config['dataset_type'] == 'separate_csv':\n+        result = {}\n+        train_result = parser.parse(get_molnet_filepath(dataset_name, 'train'),\n+                                    return_smiles=return_smiles,\n+                                    target_index=target_index)\n+        valid_result = parser.parse(get_molnet_filepath(dataset_name, 'valid'),\n+                                    return_smiles=return_smiles,\n+                                    target_index=target_index)\n+        test_result = parser.parse(get_molnet_filepath(dataset_name, 'test'),\n+                                   return_smiles=return_smiles,\n+                                   target_index=target_index)\n+        result['dataset'] = (train_result['dataset'], valid_result['dataset'],\n+                             test_result['dataset'])\n+        result['smiles'] = (train_result['smiles'], valid_result['smiles'],\n+                            test_result['smiles'])\n+    else:\n+        raise NotImplementedError\n+    return result\n+\n+\n+def get_molnet_filepath(dataset_name, filetype='onefile',\n+                        download_if_not_exist=True):\n+    \"\"\"Construct a file path which stores MoleculeNet dataset.\n+\n+    This method check whether the file exist or not, and downloaded it if\n+    necessary.\n+\n+    Args:\n+        dataset_name (str): MoleculeNet dataset name.\n+        file_type (str): either 'onefile', 'train', 'valid', 'test'\n+        download_if_not_exist (bool): Download a file if it does not exist.\n+\n+    Returns (str): filepath for specific MoleculeNet dataset\n+\n+    \"\"\"\n+    assert filetype in ['onefile', 'train', 'valid', 'test']\n+    if filetype == 'onefile':\n+        url_key = 'url'\n+    else:\n+        url_key = filetype + '_url'\n+    file_url = molnet_default_config[dataset_name][url_key]\n+    file_name = file_url.split('/')[-1]\n+    cache_path = _get_molnet_filepath(file_name)\n+    if not os.path.exists(cache_path):\n+        if download_if_not_exist:\n+            is_successful = download_dataset(file_url,\n+                                             save_filepath=cache_path)\n+            if not is_successful:\n+                logger = getLogger(__name__)\n+                logger.warning('Download failed.')\n+    return cache_path\n+\n+\n+def _get_molnet_filepath(file_name):\n+    \"\"\"Construct a filepath which stores MoleculeNet dataset in csv\n+\n+    This method does not check if the file is already downloaded or not.\n+\n+    Args:\n+        file_name (str): file name of MoleculeNet dataset\n+\n+    Returns (str): filepath for one of MoleculeNet dataset\n+\n+    \"\"\"\n+    cache_root = download.get_dataset_directory(_root)\n+    cache_path = os.path.join(cache_root, file_name)\n+    return cache_path\n+\n+\n+def download_dataset(dataset_url, save_filepath):\n+    \"\"\"Download and caches MoleculeNet Dataset\n+\n+    Args:\n+        dataset_url (str): URL of dataset\n+        save_filepath (str): filepath for dataset\n+\n+    Returns (bool): If success downloading, returning `True`.\n+\n+    \"\"\"\n+    logger = getLogger(__name__)\n+    logger.warning('Download {} dataset, it takes time...'","path":"chainer_chemistry/datasets/molnet/molnet.py","position":171,"original_position":171,"commit_id":"d28d92c9169c23533016250b728813de570215df","original_commit_id":"d28d92c9169c23533016250b728813de570215df","user":{"login":"corochann","id":4609798,"avatar_url":"https://avatars2.githubusercontent.com/u/4609798?v=4","gravatar_id":"","url":"https://api.github.com/users/corochann","html_url":"https://github.com/corochann","followers_url":"https://api.github.com/users/corochann/followers","following_url":"https://api.github.com/users/corochann/following{/other_user}","gists_url":"https://api.github.com/users/corochann/gists{/gist_id}","starred_url":"https://api.github.com/users/corochann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/corochann/subscriptions","organizations_url":"https://api.github.com/users/corochann/orgs","repos_url":"https://api.github.com/users/corochann/repos","events_url":"https://api.github.com/users/corochann/events{/privacy}","received_events_url":"https://api.github.com/users/corochann/received_events","type":"User","site_admin":false},"body":"Downloading may be better??","created_at":"2018-05-13T23:46:00Z","updated_at":"2018-05-14T00:02:49Z","html_url":"https://github.com/pfnet-research/chainer-chemistry/pull/165#discussion_r187817144","pull_request_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/comments/187817144"},"html":{"href":"https://github.com/pfnet-research/chainer-chemistry/pull/165#discussion_r187817144"},"pull_request":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165"}}},"pull_request":{"url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165","id":185694798,"html_url":"https://github.com/pfnet-research/chainer-chemistry/pull/165","diff_url":"https://github.com/pfnet-research/chainer-chemistry/pull/165.diff","patch_url":"https://github.com/pfnet-research/chainer-chemistry/pull/165.patch","issue_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/165","number":165,"state":"open","locked":false,"title":"Support MolculeNet Dataset","user":{"login":"mottodora","id":7134790,"avatar_url":"https://avatars3.githubusercontent.com/u/7134790?v=4","gravatar_id":"","url":"https://api.github.com/users/mottodora","html_url":"https://github.com/mottodora","followers_url":"https://api.github.com/users/mottodora/followers","following_url":"https://api.github.com/users/mottodora/following{/other_user}","gists_url":"https://api.github.com/users/mottodora/gists{/gist_id}","starred_url":"https://api.github.com/users/mottodora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mottodora/subscriptions","organizations_url":"https://api.github.com/users/mottodora/orgs","repos_url":"https://api.github.com/users/mottodora/repos","events_url":"https://api.github.com/users/mottodora/events{/privacy}","received_events_url":"https://api.github.com/users/mottodora/received_events","type":"User","site_admin":false},"body":"This PR supports [MoleculeNet](http://moleculenet.ai/). It is great datasets for chemoinformatics.\r\nThe license of MoleculeNet is MIT.\r\nhttps://github.com/deepchem/deepchem/issues/1193\r\nThis PR are going to support all dataset of MoleculeNet except PDBBind that includes protein structure features.\r\n\r\n- [x] Support one file csv dataset(almost of MoleculeNet\r\n- [x] Support Kaggle dataset (there are 3 CSV files for train, valid and test dataset)\r\n- [x] Support Random Splitting (train, valid, test)\r\n- [x] handling missing values in classification tasks\r\n- [x] Write Unit Tests\r\n- [x] Write Documents\r\n\r\nIn this PR, these features are out of scope.\r\n* Support PDBBind dataset\r\n* Transformation\r\n* Stratified Splitting\r\n* Support SDF file\r\n* Index Splitting\r\n* handling missing values in regression tasks\r\n* Advanced imputation techniques for missing data","created_at":"2018-05-03T12:04:36Z","updated_at":"2018-05-14T00:02:49Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b2f035c68e58421c512895bf359b41617f510b4a","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165/commits","review_comments_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165/comments","review_comment_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/comments{/number}","comments_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/165/comments","statuses_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/statuses/d28d92c9169c23533016250b728813de570215df","head":{"label":"mottodora:molnet","ref":"molnet","sha":"d28d92c9169c23533016250b728813de570215df","user":{"login":"mottodora","id":7134790,"avatar_url":"https://avatars3.githubusercontent.com/u/7134790?v=4","gravatar_id":"","url":"https://api.github.com/users/mottodora","html_url":"https://github.com/mottodora","followers_url":"https://api.github.com/users/mottodora/followers","following_url":"https://api.github.com/users/mottodora/following{/other_user}","gists_url":"https://api.github.com/users/mottodora/gists{/gist_id}","starred_url":"https://api.github.com/users/mottodora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mottodora/subscriptions","organizations_url":"https://api.github.com/users/mottodora/orgs","repos_url":"https://api.github.com/users/mottodora/repos","events_url":"https://api.github.com/users/mottodora/events{/privacy}","received_events_url":"https://api.github.com/users/mottodora/received_events","type":"User","site_admin":false},"repo":{"id":114965521,"name":"chainer-chemistry","full_name":"mottodora/chainer-chemistry","owner":{"login":"mottodora","id":7134790,"avatar_url":"https://avatars3.githubusercontent.com/u/7134790?v=4","gravatar_id":"","url":"https://api.github.com/users/mottodora","html_url":"https://github.com/mottodora","followers_url":"https://api.github.com/users/mottodora/followers","following_url":"https://api.github.com/users/mottodora/following{/other_user}","gists_url":"https://api.github.com/users/mottodora/gists{/gist_id}","starred_url":"https://api.github.com/users/mottodora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mottodora/subscriptions","organizations_url":"https://api.github.com/users/mottodora/orgs","repos_url":"https://api.github.com/users/mottodora/repos","events_url":"https://api.github.com/users/mottodora/events{/privacy}","received_events_url":"https://api.github.com/users/mottodora/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mottodora/chainer-chemistry","description":"Chainer Chemistry: A Library for Deep Learning in Biology and Chemistry","fork":true,"url":"https://api.github.com/repos/mottodora/chainer-chemistry","forks_url":"https://api.github.com/repos/mottodora/chainer-chemistry/forks","keys_url":"https://api.github.com/repos/mottodora/chainer-chemistry/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mottodora/chainer-chemistry/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mottodora/chainer-chemistry/teams","hooks_url":"https://api.github.com/repos/mottodora/chainer-chemistry/hooks","issue_events_url":"https://api.github.com/repos/mottodora/chainer-chemistry/issues/events{/number}","events_url":"https://api.github.com/repos/mottodora/chainer-chemistry/events","assignees_url":"https://api.github.com/repos/mottodora/chainer-chemistry/assignees{/user}","branches_url":"https://api.github.com/repos/mottodora/chainer-chemistry/branches{/branch}","tags_url":"https://api.github.com/repos/mottodora/chainer-chemistry/tags","blobs_url":"https://api.github.com/repos/mottodora/chainer-chemistry/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mottodora/chainer-chemistry/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mottodora/chainer-chemistry/git/refs{/sha}","trees_url":"https://api.github.com/repos/mottodora/chainer-chemistry/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mottodora/chainer-chemistry/statuses/{sha}","languages_url":"https://api.github.com/repos/mottodora/chainer-chemistry/languages","stargazers_url":"https://api.github.com/repos/mottodora/chainer-chemistry/stargazers","contributors_url":"https://api.github.com/repos/mottodora/chainer-chemistry/contributors","subscribers_url":"https://api.github.com/repos/mottodora/chainer-chemistry/subscribers","subscription_url":"https://api.github.com/repos/mottodora/chainer-chemistry/subscription","commits_url":"https://api.github.com/repos/mottodora/chainer-chemistry/commits{/sha}","git_commits_url":"https://api.github.com/repos/mottodora/chainer-chemistry/git/commits{/sha}","comments_url":"https://api.github.com/repos/mottodora/chainer-chemistry/comments{/number}","issue_comment_url":"https://api.github.com/repos/mottodora/chainer-chemistry/issues/comments{/number}","contents_url":"https://api.github.com/repos/mottodora/chainer-chemistry/contents/{+path}","compare_url":"https://api.github.com/repos/mottodora/chainer-chemistry/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mottodora/chainer-chemistry/merges","archive_url":"https://api.github.com/repos/mottodora/chainer-chemistry/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mottodora/chainer-chemistry/downloads","issues_url":"https://api.github.com/repos/mottodora/chainer-chemistry/issues{/number}","pulls_url":"https://api.github.com/repos/mottodora/chainer-chemistry/pulls{/number}","milestones_url":"https://api.github.com/repos/mottodora/chainer-chemistry/milestones{/number}","notifications_url":"https://api.github.com/repos/mottodora/chainer-chemistry/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mottodora/chainer-chemistry/labels{/name}","releases_url":"https://api.github.com/repos/mottodora/chainer-chemistry/releases{/id}","deployments_url":"https://api.github.com/repos/mottodora/chainer-chemistry/deployments","created_at":"2017-12-21T05:16:51Z","updated_at":"2018-05-07T06:20:25Z","pushed_at":"2018-05-09T11:00:51Z","git_url":"git://github.com/mottodora/chainer-chemistry.git","ssh_url":"git@github.com:mottodora/chainer-chemistry.git","clone_url":"https://github.com/mottodora/chainer-chemistry.git","svn_url":"https://github.com/mottodora/chainer-chemistry","homepage":"","size":850,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"pfnet-research:master","ref":"master","sha":"91bb8b7673908f54ecc54d14cbc5081c25886c2c","user":{"login":"pfnet-research","id":23070723,"avatar_url":"https://avatars2.githubusercontent.com/u/23070723?v=4","gravatar_id":"","url":"https://api.github.com/users/pfnet-research","html_url":"https://github.com/pfnet-research","followers_url":"https://api.github.com/users/pfnet-research/followers","following_url":"https://api.github.com/users/pfnet-research/following{/other_user}","gists_url":"https://api.github.com/users/pfnet-research/gists{/gist_id}","starred_url":"https://api.github.com/users/pfnet-research/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pfnet-research/subscriptions","organizations_url":"https://api.github.com/users/pfnet-research/orgs","repos_url":"https://api.github.com/users/pfnet-research/repos","events_url":"https://api.github.com/users/pfnet-research/events{/privacy}","received_events_url":"https://api.github.com/users/pfnet-research/received_events","type":"Organization","site_admin":false},"repo":{"id":112321712,"name":"chainer-chemistry","full_name":"pfnet-research/chainer-chemistry","owner":{"login":"pfnet-research","id":23070723,"avatar_url":"https://avatars2.githubusercontent.com/u/23070723?v=4","gravatar_id":"","url":"https://api.github.com/users/pfnet-research","html_url":"https://github.com/pfnet-research","followers_url":"https://api.github.com/users/pfnet-research/followers","following_url":"https://api.github.com/users/pfnet-research/following{/other_user}","gists_url":"https://api.github.com/users/pfnet-research/gists{/gist_id}","starred_url":"https://api.github.com/users/pfnet-research/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pfnet-research/subscriptions","organizations_url":"https://api.github.com/users/pfnet-research/orgs","repos_url":"https://api.github.com/users/pfnet-research/repos","events_url":"https://api.github.com/users/pfnet-research/events{/privacy}","received_events_url":"https://api.github.com/users/pfnet-research/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/pfnet-research/chainer-chemistry","description":"Chainer Chemistry: A Library for Deep Learning in Biology and Chemistry","fork":false,"url":"https://api.github.com/repos/pfnet-research/chainer-chemistry","forks_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/forks","keys_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/teams","hooks_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/hooks","issue_events_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/events{/number}","events_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/events","assignees_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/assignees{/user}","branches_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/branches{/branch}","tags_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/tags","blobs_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/git/refs{/sha}","trees_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/statuses/{sha}","languages_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/languages","stargazers_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/stargazers","contributors_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/contributors","subscribers_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/subscribers","subscription_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/subscription","commits_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/commits{/sha}","git_commits_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/git/commits{/sha}","comments_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/comments{/number}","issue_comment_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/comments{/number}","contents_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/contents/{+path}","compare_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/merges","archive_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/downloads","issues_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues{/number}","pulls_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls{/number}","milestones_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/milestones{/number}","notifications_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/labels{/name}","releases_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/releases{/id}","deployments_url":"https://api.github.com/repos/pfnet-research/chainer-chemistry/deployments","created_at":"2017-11-28T10:35:09Z","updated_at":"2018-05-13T23:13:58Z","pushed_at":"2018-05-13T23:25:50Z","git_url":"git://github.com/pfnet-research/chainer-chemistry.git","ssh_url":"git@github.com:pfnet-research/chainer-chemistry.git","clone_url":"https://github.com/pfnet-research/chainer-chemistry.git","svn_url":"https://github.com/pfnet-research/chainer-chemistry","homepage":"","size":827,"stargazers_count":189,"watchers_count":189,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":32,"mirror_url":null,"archived":false,"open_issues_count":15,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":32,"open_issues":15,"watchers":189,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165"},"html":{"href":"https://github.com/pfnet-research/chainer-chemistry/pull/165"},"issue":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/165"},"comments":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/issues/165/comments"},"review_comments":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165/comments"},"review_comment":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/pulls/165/commits"},"statuses":{"href":"https://api.github.com/repos/pfnet-research/chainer-chemistry/statuses/d28d92c9169c23533016250b728813de570215df"}},"author_association":"OWNER"}}
{"actor":{"display_login":"corochann"}}