Difference between revisions of "RPR-Data-Import"

From "A B C"
Jump to navigation Jump to search
m
m
Line 1: Line 1:
<div id="BIO">
+
<div id="ABC">
  <div class="b1">
+
<div style="padding:5px; border:1px solid #000000; background-color:#d9ead5; font-size:300%; font-weight:400; color: #000000; width:100%;">
 
Importing data in R
 
Importing data in R
  </div>
+
<div style="padding:5px; margin-top:20px; margin-bottom:10px; background-color:#d9ead5; font-size:30%; font-weight:200; color: #000000; ">
 
+
(Data import from unstructured text, structured text, spreadsheets, online repositories, and Web pages)
  {{Vspace}}
+
</div>
 
 
<div class="keywords">
 
<b>Keywords:</b>&nbsp;
 
Data import from unstructured text, structured text, spreadsheets, online repositories, and Web pages
 
 
</div>
 
</div>
  
{{Vspace}}
+
{{Smallvspace}}
 
 
 
 
__TOC__
 
 
 
{{Vspace}}
 
 
 
 
 
{{DEV}}
 
 
 
{{Vspace}}
 
  
  
</div>
+
<div style="padding:5px; border:1px solid #000000; background-color:#d9ead533; font-size:85%;">
<div id="ABC-unit-framework">
+
<div style="font-size:118%;">
== Abstract ==
+
<b>Abstract:</b><br />
 
<section begin=abstract />
 
<section begin=abstract />
<!-- included from "./components/RPR-Data-Import.components.txt", section: "abstract" -->
 
 
Practical for data import from text files, spreadsheets and Web pages.
 
Practical for data import from text files, spreadsheets and Web pages.
 
<section end=abstract />
 
<section end=abstract />
 
+
</div>
{{Vspace}}
+
<!-- ============================ -->
 
+
<hr>
 
+
<table>
== This unit ... ==
+
<tr>
=== Prerequisites ===
+
<td style="padding:10px;">
<!-- included from "./components/RPR-Data-Import.components.txt", section: "prerequisites" -->
+
<b>Objectives:</b><br />
*[[RPR-Introduction|RPR-Introduction (Introduction to R)]]
 
 
 
{{Vspace}}
 
 
 
 
 
=== Objectives ===
 
<!-- included from "./components/RPR-Data-Import.components.txt", section: "objectives" -->
 
 
...
 
...
 
+
</td>
{{Vspace}}
+
<td style="padding:10px;">
 
+
<b>Outcomes:</b><br />
 
 
=== Outcomes ===
 
<!-- included from "./components/RPR-Data-Import.components.txt", section: "outcomes" -->
 
 
...
 
...
 
+
</td>
{{Vspace}}
+
</tr>
 
+
</table>
 
+
<!-- ============================ -->
=== Deliverables ===
+
<hr>
<!-- included from "./components/RPR-Data-Import.components.txt", section: "deliverables" -->
+
<b>Deliverables:</b><br />
 +
<section begin=deliverables />
 
<!-- included from "./data/ABC-unit_components.txt", section: "deliverables-time_management" -->
 
<!-- included from "./data/ABC-unit_components.txt", section: "deliverables-time_management" -->
 
*<b>Time management</b>: Before you begin, estimate how long it will take you to complete this unit. Then, record in your course journal: the number of hours you estimated, the number of hours you worked on the unit, and the amount of time that passed between start and completion of this unit.
 
*<b>Time management</b>: Before you begin, estimate how long it will take you to complete this unit. Then, record in your course journal: the number of hours you estimated, the number of hours you worked on the unit, and the amount of time that passed between start and completion of this unit.
Line 65: Line 41:
 
<!-- included from "./data/ABC-unit_components.txt", section: "deliverables-insights" -->
 
<!-- included from "./data/ABC-unit_components.txt", section: "deliverables-insights" -->
 
*<b>Insights</b>: If you find something particularly noteworthy about this unit, make a note in your [[ABC-Insights|'''insights!''' page]].
 
*<b>Insights</b>: If you find something particularly noteworthy about this unit, make a note in your [[ABC-Insights|'''insights!''' page]].
 +
<section end=deliverables />
 +
<!-- ============================  -->
 +
<hr>
 +
<section begin=prerequisites />
 +
<b>Prerequisites:</b><br />
 +
*[[RPR-Introduction|RPR-Introduction (Introduction to R)]]
 +
<section end=prerequisites />
 +
<!-- ============================  -->
 +
</div>
 +
 +
{{Smallvspace}}
 +
 +
 +
{{DEV}}
 +
 +
{{Smallvspace}}
 +
 +
 +
__TOC__
  
 
{{Vspace}}
 
{{Vspace}}
  
  
</div>
 
<div id="BIO">
 
 
== Contents ==
 
== Contents ==
 
<!-- included from "./components/RPR-Data-Import.components.txt", section: "contents" -->
 
<!-- included from "./components/RPR-Data-Import.components.txt", section: "contents" -->
Line 124: Line 117:
  
  
 
{{Vspace}}
 
 
 
== Further reading, links and resources ==
 
<!-- Formatting exqmples:
 
{{#pmid: 19957275}}
 
<div class="reference-box">[http://www.ncbi.nlm.nih.gov]</div>
 
-->
 
 
{{Vspace}}
 
 
 
== Notes ==
 
<!-- included from "./components/RPR-Data-Import.components.txt", section: "notes" -->
 
<!-- included from "./data/ABC-unit_components.txt", section: "notes" -->
 
<references />
 
 
{{Vspace}}
 
 
 
</div>
 
<div id="ABC-unit-framework">
 
 
== Self-evaluation ==
 
== Self-evaluation ==
<!-- included from "./components/RPR-Data-Import.components.txt", section: "self-evaluation" -->
 
 
<!--
 
<!--
 
=== Question 1===
 
=== Question 1===
Line 165: Line 134:
  
 
-->
 
-->
 
+
== Notes ==
{{Vspace}}
+
<!-- included from "./components/RPR-Data-Import.components.txt", section: "notes" -->
 
+
<!-- included from "./data/ABC-unit_components.txt", section: "notes" -->
 
+
<references />
 +
== Further reading, links and resources ==
 +
<!-- Formatting exqmples:
 +
{{#pmid: 19957275}}
 +
<div class="reference-box">[http://www.ncbi.nlm.nih.gov]</div>
 +
-->
  
 
{{Vspace}}
 
{{Vspace}}

Revision as of 19:32, 26 January 2018

Importing data in R

(Data import from unstructured text, structured text, spreadsheets, online repositories, and Web pages)


 


Abstract:

Practical for data import from text files, spreadsheets and Web pages.


Objectives:
...

Outcomes:
...


Deliverables:

  • Time management: Before you begin, estimate how long it will take you to complete this unit. Then, record in your course journal: the number of hours you estimated, the number of hours you worked on the unit, and the amount of time that passed between start and completion of this unit.
  • Journal: Document your progress in your Course Journal. Some tasks may ask you to include specific items in your journal. Don't overlook these.
  • Insights: If you find something particularly noteworthy about this unit, make a note in your insights! page.

Prerequisites:


 


Caution!

This unit is under development. There is some contents here but it is incomplete and/or may change significantly: links may lead to nowhere, the contents is likely going to be rearranged, and objectives, deliverables etc. may be incomplete or missing. Do not work with this material until it is updated to "live" status.


 



 


Contents

  • Line endings
  • Unstructured text files, headers, skip, omit, and rownames
  • Caution with stringsAsFactors
  • Caution with coerced data
  • Text files with keywords
  • Text-files: changing state
  • Text-files: csv and tsv (and Excel sheets)
  • Text-files: slurping, chunking and streaming
  • curl
  • httr GET and POST
  • XML - libraries and cpath
  • Binary Data
  • R objects: save() and load()


Regex for screenscraping example:

Screenscraping

Write a PHP program that screenscrapes resolution data for a protein structure file from the PDB.

 Here is a link to a PDB record to illustrate the URL format.
   Fetch the contents of the URL into a string. Use a regex that captures the data you want to retrieve as part of some unique pattern in the HTML source. Print.
   ;The regex:
:/\s*(\d+\.\d+)/ *   identifying tag for the information we are looking for, ...
   *\s*   ... probably followed by whitespace, ...
   *(\d+\.\d+)   ... the "payload" of the match: one or more digits, a literal dot and and one or more digits.
   ;The code:
   <source lang="PHP">
   <?php
 $URLpath = "http://www.pdb.org/pdb/explore/explore.do?structureId=";
 $PDBid = "2imm";
 $source = file_get_contents($URLpath . $PDBid);
preg_match('/\s*?(\d+\.\d+)/', $source, $resolution);
 print($resolution[1]);
 ?>




Self-evaluation

Notes

Further reading, links and resources

 




 

If in doubt, ask! If anything about this learning unit is not clear to you, do not proceed blindly but ask for clarification. Post your question on the course mailing list: others are likely to have similar problems. Or send an email to your instructor.



 

About ...
 
Author:

Boris Steipe <boris.steipe@utoronto.ca>

Created:

2017-09-17

Modified:

2017-09-18

Version:

0.2

Version history:

  • 0.1 Contents outline
  • 0.1 First stub

CreativeCommonsBy.png This copyrighted material is licensed under a Creative Commons Attribution 4.0 International License. Follow the link to learn more.