{"id":13229,"date":"2022-10-03T10:35:12","date_gmt":"2022-10-03T05:05:12","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/"},"modified":"2022-10-03T10:35:12","modified_gmt":"2022-10-03T05:05:12","slug":"solved-open-csv-file-in-python-to-customize-dictionary-duplicate","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/","title":{"rendered":"[Solved] open csv file in python to customize dictionary [duplicate]"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-25001467\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"25001467\" data-parentid=\"25001269\" data-score=\"0\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>First, do you know about the <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/docs.python.org\/3\/library\/csv.html\"><code>csv<\/code><\/a> module? If not, read the introduction and examples to the point where you know how to get an iterable of rows. Print each one out, and they&#8217;ll look something like this:<\/p>\n<pre><code>['AVNIVGYSNAQGVDY', '123431', '27.0', 'Tetramer']\n<\/code><\/pre>\n<p>Or, if you use a <code>DictReader<\/code>:<\/p>\n<pre><code>{'Epitope': 'AVNIVGYSNAQGVDY', 'ID': '123431', \n 'Frequency': '27.0', 'Assay': 'Tetramer'}\n<\/code><\/pre>\n<p>But you don&#8217;t want a list of lists, or a list of dictionaries; you want a dictionary of lists, where each key is the <code>Epitope<\/code> from a row, and the corresponding value is the other three values, right? So\u2026 just insert each row into a dictionary that way:<\/p>\n<pre><code>d = {}\nwith open(path, 'rb') as f:\n    with csv.DictReader(f) as reader:\n        for row in reader:\n            d[row['Epitope']] = [row['ID'], row['Frequency'], row['Assay']]\n<\/code><\/pre>\n<p>(This would be more compact with a plain <code>reader<\/code> instead of a <code>DictReader<\/code>, but I think it&#8217;s more readable this way if you come back to the code a few months from now.)<\/p>\n<p>You also want to convert the values and use them as keys for another lookup, but that should be trivial. For example:<\/p>\n<pre><code>            row_id = ID[int(row['ID'])]\n            row_frequency = Frequency[float(row['Frequency'])]\n            row_assay = Assay[row['Assay']]\n            d[row['Epitope']] = [row_id, row_frequency, row_assay]\n<\/code><\/pre>\n<p>You can clean this up a bit by writing the row transformation as a function, and then just using a dictionary comprehension:<\/p>\n<pre><code>with open(path, 'rb') as f:\n    with csv.DictReader(f) as reader:\n        d = {row['Epitope']: process_row(row) for row in reader}\n<\/code><\/pre>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\"><\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved open csv file in python to customize dictionary [duplicate] <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] First, do you know about the csv module? If not, read the introduction and examples to the point where you know how to get an iterable of rows. Print each one out, and they&#8217;ll look something like this: [&#8216;AVNIVGYSNAQGVDY&#8217;, &#8216;123431&#8217;, &#8216;27.0&#8217;, &#8216;Tetramer&#8217;] Or, if you use a DictReader: {&#8216;Epitope&#8217;: &#8216;AVNIVGYSNAQGVDY&#8217;, &#8216;ID&#8217;: &#8216;123431&#8217;, &#8216;Frequency&#8217;: &#8216;27.0&#8217;, &#8230; <a title=\"[Solved] open csv file in python to customize dictionary [duplicate]\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\" aria-label=\"More on [Solved] open csv file in python to customize dictionary [duplicate]\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[483,834,349],"class_list":["post-13229","post","type-post","status-publish","format-standard","hentry","category-solved","tag-csv","tag-dictionary","tag-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] First, do you know about the csv module? If not, read the introduction and examples to the point where you know how to get an iterable of rows. Print each one out, and they&#8217;ll look something like this: [&#039;AVNIVGYSNAQGVDY&#039;, &#039;123431&#039;, &#039;27.0&#039;, &#039;Tetramer&#039;] Or, if you use a DictReader: {&#039;Epitope&#039;: &#039;AVNIVGYSNAQGVDY&#039;, &#039;ID&#039;: &#039;123431&#039;, &#039;Frequency&#039;: &#039;27.0&#039;, ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-03T05:05:12+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] open csv file in python to customize dictionary [duplicate]\",\"datePublished\":\"2022-10-03T05:05:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\"},\"wordCount\":189,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"csv\",\"dictionary\",\"python\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\",\"name\":\"[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-10-03T05:05:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] open csv file in python to customize dictionary [duplicate]\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb","og_description":"[ad_1] First, do you know about the csv module? If not, read the introduction and examples to the point where you know how to get an iterable of rows. Print each one out, and they&#8217;ll look something like this: ['AVNIVGYSNAQGVDY', '123431', '27.0', 'Tetramer'] Or, if you use a DictReader: {'Epitope': 'AVNIVGYSNAQGVDY', 'ID': '123431', 'Frequency': '27.0', ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/","og_site_name":"JassWeb","article_published_time":"2022-10-03T05:05:12+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] open csv file in python to customize dictionary [duplicate]","datePublished":"2022-10-03T05:05:12+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/"},"wordCount":189,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["csv","dictionary","python"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/","url":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/","name":"[Solved] open csv file in python to customize dictionary [duplicate] - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-10-03T05:05:12+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-open-csv-file-in-python-to-customize-dictionary-duplicate\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] open csv file in python to customize dictionary [duplicate]"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/13229","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=13229"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/13229\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=13229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=13229"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=13229"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}