Specific CSV Read Filtering











up vote
0
down vote

favorite












I am pretty new to Python, so I am possibly looking over an easy solution, but everything I have tried thus far has been fruitless.



I have hundreds of CSV files with identical format. The format I have is



--Name of File (unimportant)



--Single Number Value (unimportant)



--Important Row of Column Names



--Two More Rows of Unimportant Formatting Garbage



--Thousands of Rows of Important Data



--Several Blank Rows



--Thousands of Rows of Unimportant Garbage Again



I need to format it so that I am able to easily grab the Column Names and the Important Data underneath. The format is set so that the column names are always on row 5 and that the data always starts on row 8, but the amount of data can very from several hundred to several thousand.



EDIT: I got the exact row number of the heading wrong. Also, I forgot to mention that I need to save the result to a dataframe for future analysis.



This is an image of the top of the csv file
enter image description here
This is an image of the bottom of the csv file. Note that when it switches from 'important data' to 'unimportant data' the number of columns increases, which might make programming difficult.
enter image description here










share|improve this question




























    up vote
    0
    down vote

    favorite












    I am pretty new to Python, so I am possibly looking over an easy solution, but everything I have tried thus far has been fruitless.



    I have hundreds of CSV files with identical format. The format I have is



    --Name of File (unimportant)



    --Single Number Value (unimportant)



    --Important Row of Column Names



    --Two More Rows of Unimportant Formatting Garbage



    --Thousands of Rows of Important Data



    --Several Blank Rows



    --Thousands of Rows of Unimportant Garbage Again



    I need to format it so that I am able to easily grab the Column Names and the Important Data underneath. The format is set so that the column names are always on row 5 and that the data always starts on row 8, but the amount of data can very from several hundred to several thousand.



    EDIT: I got the exact row number of the heading wrong. Also, I forgot to mention that I need to save the result to a dataframe for future analysis.



    This is an image of the top of the csv file
    enter image description here
    This is an image of the bottom of the csv file. Note that when it switches from 'important data' to 'unimportant data' the number of columns increases, which might make programming difficult.
    enter image description here










    share|improve this question


























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I am pretty new to Python, so I am possibly looking over an easy solution, but everything I have tried thus far has been fruitless.



      I have hundreds of CSV files with identical format. The format I have is



      --Name of File (unimportant)



      --Single Number Value (unimportant)



      --Important Row of Column Names



      --Two More Rows of Unimportant Formatting Garbage



      --Thousands of Rows of Important Data



      --Several Blank Rows



      --Thousands of Rows of Unimportant Garbage Again



      I need to format it so that I am able to easily grab the Column Names and the Important Data underneath. The format is set so that the column names are always on row 5 and that the data always starts on row 8, but the amount of data can very from several hundred to several thousand.



      EDIT: I got the exact row number of the heading wrong. Also, I forgot to mention that I need to save the result to a dataframe for future analysis.



      This is an image of the top of the csv file
      enter image description here
      This is an image of the bottom of the csv file. Note that when it switches from 'important data' to 'unimportant data' the number of columns increases, which might make programming difficult.
      enter image description here










      share|improve this question















      I am pretty new to Python, so I am possibly looking over an easy solution, but everything I have tried thus far has been fruitless.



      I have hundreds of CSV files with identical format. The format I have is



      --Name of File (unimportant)



      --Single Number Value (unimportant)



      --Important Row of Column Names



      --Two More Rows of Unimportant Formatting Garbage



      --Thousands of Rows of Important Data



      --Several Blank Rows



      --Thousands of Rows of Unimportant Garbage Again



      I need to format it so that I am able to easily grab the Column Names and the Important Data underneath. The format is set so that the column names are always on row 5 and that the data always starts on row 8, but the amount of data can very from several hundred to several thousand.



      EDIT: I got the exact row number of the heading wrong. Also, I forgot to mention that I need to save the result to a dataframe for future analysis.



      This is an image of the top of the csv file
      enter image description here
      This is an image of the bottom of the csv file. Note that when it switches from 'important data' to 'unimportant data' the number of columns increases, which might make programming difficult.
      enter image description here







      python csv dataframe






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 12 at 6:40

























      asked Nov 12 at 4:40









      TinyMuffin

      286




      286
























          2 Answers
          2






          active

          oldest

          votes

















          up vote
          1
          down vote



          accepted










          You can use the below code. I got the column names with the line number =5, and data starting from line number =8 and stopped where we encounter a blank line.



          import csv,pandas as pd
          Space_encounter_linenum_flag=0
          index_df=-1
          #This flag is set when it encounters first blank line after the data values end
          with open("C:/Users/user/PycharmProjects/spacysample/MrX.csv", 'r') as csvfile:
          csvreader = csv.reader(csvfile, delimiter=',')
          for row in csvreader:
          index_df=index_df+1
          if csvreader.line_num==5:
          #To get column names
          print("THE COLUMN NAMES IN LINE NUMBER 5 ARE...........")
          print(', '.join(row))
          df_col=pd.DataFrame(row)
          if csvreader.line_num==8:
          #To get data values
          print("**********************************************************")
          print("THE DATA VALUES STARTING FROM LINE NUMBER 8 ARE...........")
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_col.append(row)
          if (csvreader.line_num>8) and max(row, key=len)=='':
          #set flag when blank line is encountered
          Space_encounter_linenum_flag=1
          if (csvreader.line_num>8 and row is not '') and (row is not '') and Space_encounter_linenum_flag!=1:
          #stop where blank line is encountered
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_val=pd.DataFrame(row)
          df_col.append(df_val)
          if (csvreader.line_num>8) and Space_encounter_linenum_flag==1:
          print('Loop breaks at, line number: '+str(csvreader.line_num))
          break


          Hope this does exactly what you want.






          share|improve this answer























          • Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
            – TinyMuffin
            Nov 12 at 5:56












          • Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
            – Jim Todd
            Nov 12 at 6:17










          • Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
            – TinyMuffin
            Nov 12 at 6:46












          • Ok. updated the code to remove the trailing blank values. Check it out.
            – Jim Todd
            Nov 12 at 6:48










          • Perfect! I believe it works exactly as I need now! Thank you so much!
            – TinyMuffin
            Nov 12 at 6:50


















          up vote
          0
          down vote













          import pandas as pd
          df = pd.read_csv('path_to_your_csv', header=5)[7:]
          # List Columns
          df.columns


          In case you don't have pandas : pip install pandas



          read_csv docs : https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html






          share|improve this answer





















          • This does not get rid of the thousands of blank and unusable rows underneath my data though.
            – TinyMuffin
            Nov 12 at 5:07










          • @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
            – Jim Todd
            Nov 12 at 5:39











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53256053%2fspecific-csv-read-filtering%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          1
          down vote



          accepted










          You can use the below code. I got the column names with the line number =5, and data starting from line number =8 and stopped where we encounter a blank line.



          import csv,pandas as pd
          Space_encounter_linenum_flag=0
          index_df=-1
          #This flag is set when it encounters first blank line after the data values end
          with open("C:/Users/user/PycharmProjects/spacysample/MrX.csv", 'r') as csvfile:
          csvreader = csv.reader(csvfile, delimiter=',')
          for row in csvreader:
          index_df=index_df+1
          if csvreader.line_num==5:
          #To get column names
          print("THE COLUMN NAMES IN LINE NUMBER 5 ARE...........")
          print(', '.join(row))
          df_col=pd.DataFrame(row)
          if csvreader.line_num==8:
          #To get data values
          print("**********************************************************")
          print("THE DATA VALUES STARTING FROM LINE NUMBER 8 ARE...........")
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_col.append(row)
          if (csvreader.line_num>8) and max(row, key=len)=='':
          #set flag when blank line is encountered
          Space_encounter_linenum_flag=1
          if (csvreader.line_num>8 and row is not '') and (row is not '') and Space_encounter_linenum_flag!=1:
          #stop where blank line is encountered
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_val=pd.DataFrame(row)
          df_col.append(df_val)
          if (csvreader.line_num>8) and Space_encounter_linenum_flag==1:
          print('Loop breaks at, line number: '+str(csvreader.line_num))
          break


          Hope this does exactly what you want.






          share|improve this answer























          • Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
            – TinyMuffin
            Nov 12 at 5:56












          • Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
            – Jim Todd
            Nov 12 at 6:17










          • Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
            – TinyMuffin
            Nov 12 at 6:46












          • Ok. updated the code to remove the trailing blank values. Check it out.
            – Jim Todd
            Nov 12 at 6:48










          • Perfect! I believe it works exactly as I need now! Thank you so much!
            – TinyMuffin
            Nov 12 at 6:50















          up vote
          1
          down vote



          accepted










          You can use the below code. I got the column names with the line number =5, and data starting from line number =8 and stopped where we encounter a blank line.



          import csv,pandas as pd
          Space_encounter_linenum_flag=0
          index_df=-1
          #This flag is set when it encounters first blank line after the data values end
          with open("C:/Users/user/PycharmProjects/spacysample/MrX.csv", 'r') as csvfile:
          csvreader = csv.reader(csvfile, delimiter=',')
          for row in csvreader:
          index_df=index_df+1
          if csvreader.line_num==5:
          #To get column names
          print("THE COLUMN NAMES IN LINE NUMBER 5 ARE...........")
          print(', '.join(row))
          df_col=pd.DataFrame(row)
          if csvreader.line_num==8:
          #To get data values
          print("**********************************************************")
          print("THE DATA VALUES STARTING FROM LINE NUMBER 8 ARE...........")
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_col.append(row)
          if (csvreader.line_num>8) and max(row, key=len)=='':
          #set flag when blank line is encountered
          Space_encounter_linenum_flag=1
          if (csvreader.line_num>8 and row is not '') and (row is not '') and Space_encounter_linenum_flag!=1:
          #stop where blank line is encountered
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_val=pd.DataFrame(row)
          df_col.append(df_val)
          if (csvreader.line_num>8) and Space_encounter_linenum_flag==1:
          print('Loop breaks at, line number: '+str(csvreader.line_num))
          break


          Hope this does exactly what you want.






          share|improve this answer























          • Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
            – TinyMuffin
            Nov 12 at 5:56












          • Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
            – Jim Todd
            Nov 12 at 6:17










          • Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
            – TinyMuffin
            Nov 12 at 6:46












          • Ok. updated the code to remove the trailing blank values. Check it out.
            – Jim Todd
            Nov 12 at 6:48










          • Perfect! I believe it works exactly as I need now! Thank you so much!
            – TinyMuffin
            Nov 12 at 6:50













          up vote
          1
          down vote



          accepted







          up vote
          1
          down vote



          accepted






          You can use the below code. I got the column names with the line number =5, and data starting from line number =8 and stopped where we encounter a blank line.



          import csv,pandas as pd
          Space_encounter_linenum_flag=0
          index_df=-1
          #This flag is set when it encounters first blank line after the data values end
          with open("C:/Users/user/PycharmProjects/spacysample/MrX.csv", 'r') as csvfile:
          csvreader = csv.reader(csvfile, delimiter=',')
          for row in csvreader:
          index_df=index_df+1
          if csvreader.line_num==5:
          #To get column names
          print("THE COLUMN NAMES IN LINE NUMBER 5 ARE...........")
          print(', '.join(row))
          df_col=pd.DataFrame(row)
          if csvreader.line_num==8:
          #To get data values
          print("**********************************************************")
          print("THE DATA VALUES STARTING FROM LINE NUMBER 8 ARE...........")
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_col.append(row)
          if (csvreader.line_num>8) and max(row, key=len)=='':
          #set flag when blank line is encountered
          Space_encounter_linenum_flag=1
          if (csvreader.line_num>8 and row is not '') and (row is not '') and Space_encounter_linenum_flag!=1:
          #stop where blank line is encountered
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_val=pd.DataFrame(row)
          df_col.append(df_val)
          if (csvreader.line_num>8) and Space_encounter_linenum_flag==1:
          print('Loop breaks at, line number: '+str(csvreader.line_num))
          break


          Hope this does exactly what you want.






          share|improve this answer














          You can use the below code. I got the column names with the line number =5, and data starting from line number =8 and stopped where we encounter a blank line.



          import csv,pandas as pd
          Space_encounter_linenum_flag=0
          index_df=-1
          #This flag is set when it encounters first blank line after the data values end
          with open("C:/Users/user/PycharmProjects/spacysample/MrX.csv", 'r') as csvfile:
          csvreader = csv.reader(csvfile, delimiter=',')
          for row in csvreader:
          index_df=index_df+1
          if csvreader.line_num==5:
          #To get column names
          print("THE COLUMN NAMES IN LINE NUMBER 5 ARE...........")
          print(', '.join(row))
          df_col=pd.DataFrame(row)
          if csvreader.line_num==8:
          #To get data values
          print("**********************************************************")
          print("THE DATA VALUES STARTING FROM LINE NUMBER 8 ARE...........")
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_col.append(row)
          if (csvreader.line_num>8) and max(row, key=len)=='':
          #set flag when blank line is encountered
          Space_encounter_linenum_flag=1
          if (csvreader.line_num>8 and row is not '') and (row is not '') and Space_encounter_linenum_flag!=1:
          #stop where blank line is encountered
          while row[-1] is '':
          row.pop()
          print(', '.join(row))
          df_val=pd.DataFrame(row)
          df_col.append(df_val)
          if (csvreader.line_num>8) and Space_encounter_linenum_flag==1:
          print('Loop breaks at, line number: '+str(csvreader.line_num))
          break


          Hope this does exactly what you want.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 12 at 7:18

























          answered Nov 12 at 5:14









          Jim Todd

          24716




          24716












          • Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
            – TinyMuffin
            Nov 12 at 5:56












          • Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
            – Jim Todd
            Nov 12 at 6:17










          • Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
            – TinyMuffin
            Nov 12 at 6:46












          • Ok. updated the code to remove the trailing blank values. Check it out.
            – Jim Todd
            Nov 12 at 6:48










          • Perfect! I believe it works exactly as I need now! Thank you so much!
            – TinyMuffin
            Nov 12 at 6:50


















          • Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
            – TinyMuffin
            Nov 12 at 5:56












          • Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
            – Jim Todd
            Nov 12 at 6:17










          • Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
            – TinyMuffin
            Nov 12 at 6:46












          • Ok. updated the code to remove the trailing blank values. Check it out.
            – Jim Todd
            Nov 12 at 6:48










          • Perfect! I believe it works exactly as I need now! Thank you so much!
            – TinyMuffin
            Nov 12 at 6:50
















          Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
          – TinyMuffin
          Nov 12 at 5:56






          Hmm, I'm getting some weird results with this. The results starts with a blank row and then starts printing at row 521 until the end. It is also appending something like 50 blank values on the end of each row. This is definitely closer than anything I've done though. Also, how would you save the result to a dataframe for further analysis? Sorry, should've specified that up top.
          – TinyMuffin
          Nov 12 at 5:56














          Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
          – Jim Todd
          Nov 12 at 6:17




          Is the number of columns and data values equal in your CSV. Also, if possible can you share sample of your CSV data
          – Jim Todd
          Nov 12 at 6:17












          Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
          – TinyMuffin
          Nov 12 at 6:46






          Not completely sure what you mean but the columns amount doesn't change in the section I need, if that's what you mean. The part I don't need below my data increases the column numbers by about eight. Then there is a footer that takes up a shocking ~230 columns. If you are asking if its a perfect square dataframe (i.e. 40x40, 500x500), it is not. There are about 21 columns with thousands of data points underneath.
          – TinyMuffin
          Nov 12 at 6:46














          Ok. updated the code to remove the trailing blank values. Check it out.
          – Jim Todd
          Nov 12 at 6:48




          Ok. updated the code to remove the trailing blank values. Check it out.
          – Jim Todd
          Nov 12 at 6:48












          Perfect! I believe it works exactly as I need now! Thank you so much!
          – TinyMuffin
          Nov 12 at 6:50




          Perfect! I believe it works exactly as I need now! Thank you so much!
          – TinyMuffin
          Nov 12 at 6:50












          up vote
          0
          down vote













          import pandas as pd
          df = pd.read_csv('path_to_your_csv', header=5)[7:]
          # List Columns
          df.columns


          In case you don't have pandas : pip install pandas



          read_csv docs : https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html






          share|improve this answer





















          • This does not get rid of the thousands of blank and unusable rows underneath my data though.
            – TinyMuffin
            Nov 12 at 5:07










          • @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
            – Jim Todd
            Nov 12 at 5:39















          up vote
          0
          down vote













          import pandas as pd
          df = pd.read_csv('path_to_your_csv', header=5)[7:]
          # List Columns
          df.columns


          In case you don't have pandas : pip install pandas



          read_csv docs : https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html






          share|improve this answer





















          • This does not get rid of the thousands of blank and unusable rows underneath my data though.
            – TinyMuffin
            Nov 12 at 5:07










          • @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
            – Jim Todd
            Nov 12 at 5:39













          up vote
          0
          down vote










          up vote
          0
          down vote









          import pandas as pd
          df = pd.read_csv('path_to_your_csv', header=5)[7:]
          # List Columns
          df.columns


          In case you don't have pandas : pip install pandas



          read_csv docs : https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html






          share|improve this answer












          import pandas as pd
          df = pd.read_csv('path_to_your_csv', header=5)[7:]
          # List Columns
          df.columns


          In case you don't have pandas : pip install pandas



          read_csv docs : https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 12 at 4:58









          Po Xin

          133




          133












          • This does not get rid of the thousands of blank and unusable rows underneath my data though.
            – TinyMuffin
            Nov 12 at 5:07










          • @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
            – Jim Todd
            Nov 12 at 5:39


















          • This does not get rid of the thousands of blank and unusable rows underneath my data though.
            – TinyMuffin
            Nov 12 at 5:07










          • @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
            – Jim Todd
            Nov 12 at 5:39
















          This does not get rid of the thousands of blank and unusable rows underneath my data though.
          – TinyMuffin
          Nov 12 at 5:07




          This does not get rid of the thousands of blank and unusable rows underneath my data though.
          – TinyMuffin
          Nov 12 at 5:07












          @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
          – Jim Todd
          Nov 12 at 5:39




          @TinyMuffin Check my answer and let me know if it doesnt work. Happy Learning!
          – Jim Todd
          Nov 12 at 5:39


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53256053%2fspecific-csv-read-filtering%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Xamarin.iOS Cant Deploy on Iphone

          Glorious Revolution

          Dulmage-Mendelsohn matrix decomposition in Python