<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to transpose this table? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-transpose-this-table/m-p/898503#M355131</link>
    <description>&lt;P&gt;I have data that is structured in a matrix format exactly like this (except with more rows and columns). I've copied the raw data as I am not even sure how to load this into SAS.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="811"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="69"&gt;firm&lt;/TD&gt;
&lt;TD width="77"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;year&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;2005&lt;/TD&gt;
&lt;TD&gt;2006&lt;/TD&gt;
&lt;TD&gt;2007&lt;/TD&gt;
&lt;TD&gt;2008&lt;/TD&gt;
&lt;TD&gt;2009&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;2011&lt;/TD&gt;
&lt;TD&gt;2012&lt;/TD&gt;
&lt;TD&gt;2013&lt;/TD&gt;
&lt;TD&gt;2014&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;2011&lt;/TD&gt;
&lt;TD&gt;2012&lt;/TD&gt;
&lt;TD&gt;2013&lt;/TD&gt;
&lt;TD&gt;2014&lt;/TD&gt;
&lt;TD&gt;2015&lt;/TD&gt;
&lt;TD&gt;2016&lt;/TD&gt;
&lt;TD&gt;2017&lt;/TD&gt;
&lt;TD&gt;2018&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;individual&lt;/TD&gt;
&lt;TD&gt;event_year&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;103307-86&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;42185-26&lt;/TD&gt;
&lt;TD&gt;2005&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.2&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.2&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;42185-26&lt;/TD&gt;
&lt;TD&gt;2009&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Across the columns are two headers, firm identifiers (e.g., 1001, 1003) and year identifiers for each firm (e.g., 2005 to 2014 for firm=1001 and 2010 to 2018 for firm=1003). Across the rows, I have identifiers for individuals and an event that occurs in a given year for that individual ("event_year"). What I'd like to do is transpose the data into the following format:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;DATA want;
  input individual &amp;amp; $char10. event_year firm year score;
  length individual $10;
DATALINES;
103307-86	2010	1001	2005	0.3
103307-86	2010	1001	2006	0.0
103307-86	2010	1001	2007	1.0
103307-86	2010	1001	2008	0.6
103307-86	2010	1001	2009	0.0
103307-86	2010	1001	2010	0.0
103307-86	2010	1001	2011	0.9
103307-86	2010	1001	2012	0.8
103307-86	2010	1001	2013	0.8
103307-86	2010	1001	2014	0.0
103307-86	2010	1003	2010	1.0
103307-86	2010	1003	2011	0.7
103307-86	2010	1003	2012	0.1
103307-86	2010	1003	2013	0.1
103307-86	2010	1003	2014	0.7
103307-86	2010	1003	2015	0.4
103307-86	2010	1003	2016	0.3
103307-86	2010	1003	2017	0.6
103307-86	2010	1003	2018	0.3
42185-26	2005	1001	2005	0.8
42185-26	2005	1001	2006	0.6
42185-26	2005	1001	2007	0.3
42185-26	2005	1001	2008	0.7
42185-26	2005	1001	2009	0.8
42185-26	2005	1001	2010	0.4
42185-26	2005	1001	2011	0.7
42185-26	2005	1001	2012	0.2
42185-26	2005	1001	2013	0.1
42185-26	2005	1001	2014	0.6
42185-26	2005	1003	2010	0.2
42185-26	2005	1003	2011	0.4
42185-26	2005	1003	2012	0.8
42185-26	2005	1003	2013	0.1
42185-26	2005	1003	2014	0.4
42185-26	2005	1003	2015	0.5
42185-26	2005	1003	2016	1.0
42185-26	2005	1003	2017	0.4
42185-26	2005	1003	2018	0.5
42185-26	2009	1001	2005	0.6
42185-26	2009	1001	2006	0.7
42185-26	2009	1001	2007	0.9
42185-26	2009	1001	2008	0.4
42185-26	2009	1001	2009	0.5
42185-26	2009	1001	2010	0.1
42185-26	2009	1001	2011	0.9
42185-26	2009	1001	2012	0.7
42185-26	2009	1001	2013	0.9
42185-26	2009	1001	2014	0.6
42185-26	2009	1003	2010	0.6
42185-26	2009	1003	2011	0.7
42185-26	2009	1003	2012	0.3
42185-26	2009	1003	2013	0.5
42185-26	2009	1003	2014	0.9
42185-26	2009	1003	2015	0.1
42185-26	2009	1003	2016	1.0
42185-26	2009	1003	2017	0.7
42185-26	2009	1003	2018	0.7
;
RUN;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;As you can see, I want to transpose the data into "vertical" format, where each row corresponds to a individual, event_year, firm, and year observation. I've created a variable called "score" that contains the value in the matrix. Thank you.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 13 Oct 2023 16:26:22 GMT</pubDate>
    <dc:creator>elbarto</dc:creator>
    <dc:date>2023-10-13T16:26:22Z</dc:date>
    <item>
      <title>How to transpose this table?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-transpose-this-table/m-p/898503#M355131</link>
      <description>&lt;P&gt;I have data that is structured in a matrix format exactly like this (except with more rows and columns). I've copied the raw data as I am not even sure how to load this into SAS.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="811"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="69"&gt;firm&lt;/TD&gt;
&lt;TD width="77"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1001&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;TD width="35"&gt;1003&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;year&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;2005&lt;/TD&gt;
&lt;TD&gt;2006&lt;/TD&gt;
&lt;TD&gt;2007&lt;/TD&gt;
&lt;TD&gt;2008&lt;/TD&gt;
&lt;TD&gt;2009&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;2011&lt;/TD&gt;
&lt;TD&gt;2012&lt;/TD&gt;
&lt;TD&gt;2013&lt;/TD&gt;
&lt;TD&gt;2014&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;2011&lt;/TD&gt;
&lt;TD&gt;2012&lt;/TD&gt;
&lt;TD&gt;2013&lt;/TD&gt;
&lt;TD&gt;2014&lt;/TD&gt;
&lt;TD&gt;2015&lt;/TD&gt;
&lt;TD&gt;2016&lt;/TD&gt;
&lt;TD&gt;2017&lt;/TD&gt;
&lt;TD&gt;2018&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;individual&lt;/TD&gt;
&lt;TD&gt;event_year&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;103307-86&lt;/TD&gt;
&lt;TD&gt;2010&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.0&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;42185-26&lt;/TD&gt;
&lt;TD&gt;2005&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.2&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.2&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.8&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;42185-26&lt;/TD&gt;
&lt;TD&gt;2009&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.4&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.6&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.3&lt;/TD&gt;
&lt;TD&gt;0.5&lt;/TD&gt;
&lt;TD&gt;0.9&lt;/TD&gt;
&lt;TD&gt;0.1&lt;/TD&gt;
&lt;TD&gt;1.0&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;TD&gt;0.7&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Across the columns are two headers, firm identifiers (e.g., 1001, 1003) and year identifiers for each firm (e.g., 2005 to 2014 for firm=1001 and 2010 to 2018 for firm=1003). Across the rows, I have identifiers for individuals and an event that occurs in a given year for that individual ("event_year"). What I'd like to do is transpose the data into the following format:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;DATA want;
  input individual &amp;amp; $char10. event_year firm year score;
  length individual $10;
DATALINES;
103307-86	2010	1001	2005	0.3
103307-86	2010	1001	2006	0.0
103307-86	2010	1001	2007	1.0
103307-86	2010	1001	2008	0.6
103307-86	2010	1001	2009	0.0
103307-86	2010	1001	2010	0.0
103307-86	2010	1001	2011	0.9
103307-86	2010	1001	2012	0.8
103307-86	2010	1001	2013	0.8
103307-86	2010	1001	2014	0.0
103307-86	2010	1003	2010	1.0
103307-86	2010	1003	2011	0.7
103307-86	2010	1003	2012	0.1
103307-86	2010	1003	2013	0.1
103307-86	2010	1003	2014	0.7
103307-86	2010	1003	2015	0.4
103307-86	2010	1003	2016	0.3
103307-86	2010	1003	2017	0.6
103307-86	2010	1003	2018	0.3
42185-26	2005	1001	2005	0.8
42185-26	2005	1001	2006	0.6
42185-26	2005	1001	2007	0.3
42185-26	2005	1001	2008	0.7
42185-26	2005	1001	2009	0.8
42185-26	2005	1001	2010	0.4
42185-26	2005	1001	2011	0.7
42185-26	2005	1001	2012	0.2
42185-26	2005	1001	2013	0.1
42185-26	2005	1001	2014	0.6
42185-26	2005	1003	2010	0.2
42185-26	2005	1003	2011	0.4
42185-26	2005	1003	2012	0.8
42185-26	2005	1003	2013	0.1
42185-26	2005	1003	2014	0.4
42185-26	2005	1003	2015	0.5
42185-26	2005	1003	2016	1.0
42185-26	2005	1003	2017	0.4
42185-26	2005	1003	2018	0.5
42185-26	2009	1001	2005	0.6
42185-26	2009	1001	2006	0.7
42185-26	2009	1001	2007	0.9
42185-26	2009	1001	2008	0.4
42185-26	2009	1001	2009	0.5
42185-26	2009	1001	2010	0.1
42185-26	2009	1001	2011	0.9
42185-26	2009	1001	2012	0.7
42185-26	2009	1001	2013	0.9
42185-26	2009	1001	2014	0.6
42185-26	2009	1003	2010	0.6
42185-26	2009	1003	2011	0.7
42185-26	2009	1003	2012	0.3
42185-26	2009	1003	2013	0.5
42185-26	2009	1003	2014	0.9
42185-26	2009	1003	2015	0.1
42185-26	2009	1003	2016	1.0
42185-26	2009	1003	2017	0.7
42185-26	2009	1003	2018	0.7
;
RUN;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;As you can see, I want to transpose the data into "vertical" format, where each row corresponds to a individual, event_year, firm, and year observation. I've created a variable called "score" that contains the value in the matrix. Thank you.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 13 Oct 2023 16:26:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-transpose-this-table/m-p/898503#M355131</guid>
      <dc:creator>elbarto</dc:creator>
      <dc:date>2023-10-13T16:26:22Z</dc:date>
    </item>
    <item>
      <title>Re: How to transpose this table?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-transpose-this-table/m-p/898550#M355154</link>
      <description>&lt;P&gt;One simple way to solve the problem is as follows:&lt;BR /&gt;There could be more elegant methods but the approach used here&amp;nbsp; is simple and basic - comprehensible with a basic knowledge of SAS.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/*Convert your source data into a tab separated file called your_datafile.
Give the full path and file name.
You can also use a csv file.
I have not used column headers. This keeps it simple.
Then import and create a dataset&amp;nbsp;*/
proc import datafile = your_datafile dbms=TAB out=A replace;
getnames=no;
run;
/*Separate the first two rows into a separate data a dataset*/
data b;
set a ;
if _n_&amp;lt;=2;
run;
/* Separate the next three rows into a separate dataset*/
data c;
set a;
if _n_ &amp;gt;2;
run;
/* transpose the first dataset from horizontal to vertical*/
proc transpose data=b out=bb(RENAME=(COL1=FIRM COL2=YEAR));
Var var2-Var21;
run;
/* transpose the second dataset from horizontal to vertical*/
proc transpose data=c out=cc(RENAME=(VAR1=INDIVIDUAL VAR2=EVENT_YEAR));
by Var1 Var2;
Var var3-Var21;
run;
/*sort them */
proc sort data=bb;
by _NAME_;
run;
proc sort data=cc;
by _NAME_;
run;
/* Get the data in the desired format into a dataset  called desired&lt;BR /&gt;by merging bb and cc.
I am ordering the columns as shown in your question.
*/
data desired(drop=_NAME_);
retain INDIVIDUAl EVENT_YEAR FIRM YEAR SCORE);
merge cc bb;
by _NAME_;
run;

proc sort data=desired;
by INDIVIDUAL EVENT_YEAR;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Everything in the code is simple and self explanatory.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Oct 2023 21:01:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-transpose-this-table/m-p/898550#M355154</guid>
      <dc:creator>Sajid01</dc:creator>
      <dc:date>2023-10-13T21:01:39Z</dc:date>
    </item>
  </channel>
</rss>

