c# free pdf viewer : Add page to pdf acrobat SDK application service wpf html windows dnn R%20Graphics%20Cookbook38-part720

15.19. Converting Data from Wide to Long
Problem
You want to convert a data frame from “wide” format to “long” format.
Solution
Use melt() from the reshape2 package. In the anthoming data set, for each angle, there
are two measurements: one column contains measurements in the experimental con‐
dition and the other contains measurements in the control condition:
library(gcookbook) # For the data set
anthoming
angle expt ctrl
-20    1    0
-10    7    3
   2    3
10    0    3
20    0    1
We can reshape the data so that all the measurements are in one column. This will put
the values from expt and ctrl into one column, and put the names into a different
column:
library(reshape2)
melt(anthoming, id.vars="angle", variable.name="condition", value.name="count")
angle condition count
-20      expt     1
-10      expt     7
     expt     2
10      expt     0
20      expt     0
-20      ctrl     0
-10      ctrl     3
     ctrl     3
10      ctrl     3
20      ctrl     1
This data frame represents the same information as the original one, but it is structured
in a way that is more conducive to some analyses.
15.19. Converting Data from Wide to Long | 365
Add page to pdf acrobat - insert pages into PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide C# Users to Insert (Empty) PDF Page or Pages from a Supported File Format
add page numbers to a pdf file; add pages to pdf preview
Add page to pdf acrobat - VB.NET PDF Page Insert Library: insert pages into PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use VB.NET APIs to Add a New Blank Page to PDF Document
add page numbers to a pdf in preview; add page to pdf preview
Discussion
In the source data, there are ID variables and measure variables. The ID variables are
those that specify which values go together. In the source data, the first row holds meas‐
urements for when angle is –20. In the output data frame, the two measurements, for
expt and ctrl, are no longer in the same row, but we can still tell that they belong
together because they have the same value of angle.
The measure variables are by default all the non-ID variables. The names of these vari‐
ables are put into a new column specified by variable.name, and the values are put into
a new column specified by value.name.
If you don’t want to use all the non-ID columns as measure variables, you can specify
measure.vars. For example, in the drunk data set, we can use just the 0-29 and 30-39
groups:
drunk
sex 0-29 30-39 40-49 50-59 60+
male  185   207   260   180  71
female    4    13    10     7  10
melt(drunk, id.vars="sex", measure.vars=c("0-29""30-39"),
variable.name="age", value.name="count")
sex   age count
male  0-29   185
female  0-29     4
male 30-39   207
female 30-39    13
It’s also possible to use more than one column as the ID variables:
plum_wide
length      time dead alive
long   at_once   84   156
long in_spring  156    84
short   at_once  133   107
short in_spring  209    31
melt(plum_wide, id.vars=c("length","time"), variable.name="survival"
value.name="count")
length      time survival count
long   at_once     dead    84
long in_spring     dead   156
short   at_once     dead   133
short in_spring     dead   209
366 | Chapter 15: Getting Your Data into Shape
.NET PDF Document Viewing, Annotation, Conversion & Processing
Annotate & Comment. Add, insert PDF native annotations to PDF file. Print. Support for all the print modes in Acrobat PDF. Print only specified page ranges.
add pages to pdf acrobat; add multi page pdf to word document
C# PDF Converter Library SDK to convert PDF to other file formats
using other external third-party dependencies like Adobe Acrobat. to image or document, or from PDF document to other file formats, like multi-page TIFF file
add page numbers to pdf document in preview; add page numbers to pdf using preview
long   at_once    alive   156
long in_spring    alive    84
short   at_once    alive   107
short in_spring    alive    31
Some data sets don’t come with a column with an ID variable. For example, in the
corneas data set, each row represents one pair of measurements, but there is no ID
variable. Without an ID variable, you won’t be able to tell how the values are meant to
be paired together. In these cases, you can add an ID variable before using melt():
# Make a copy of the data
co <- corneas
co
affected notaffected
488         484
478         478
480         492
426         444
440         436
410         398
458         464
460         476
# Add an ID column
co$id <- 1:nrow(co)
melt(co, id.vars="id", variable.name="eye", value.name="thickness")
id         eye thickness
   affected       488
   affected       478
   affected       480
   affected       426
   affected       440
   affected       410
   affected       458
   affected       460
1 notaffected       484
2 notaffected       478
3 notaffected       492
4 notaffected       444
5 notaffected       436
6 notaffected       398
7 notaffected       464
8 notaffected       476
Having numeric values for the ID variable may be problematic for subsequent analyses,
so you may want to convert id to a character vector with as.character(), or a factor
with factor().
15.19. Converting Data from Wide to Long | 367
C# powerpoint - PowerPoint Conversion & Rendering in C#.NET
without using other external third-party dependencies like Adobe Acrobat. PowerPoint to PDF Conversion. This page will tell you how to use XDoc.PowerPoint SDK
add page numbers pdf file; add pages to pdf online
C# Word - Word Conversion in C#.NET
independently, without using other external third-party dependencies like Adobe Acrobat. Word to PDF Conversion. This page will tell you how to use XDoc.Word
add page numbers to a pdf file; add page number pdf file
See Also
See Recipe 15.20 to do conversions in the other direction, from long to wide.
See the stack() function for another way of converting from wide to long.
15.20. Converting Data from Long to Wide
Problem
You want to convert a data frame from “long” format to “wide” format.
Solution
Use the dcast() function from the reshape2 package. In this example, we’ll use the
plum data set, which is in a long format:
library(gcookbook) # For the data set
plum
length      time survival count
long   at_once     dead    84
long in_spring     dead   156
short   at_once     dead   133
short in_spring     dead   209
long   at_once    alive   156
long in_spring    alive    84
short   at_once    alive   107
short in_spring    alive    31
The conversion to wide format takes each unique value in one column and uses those
values as headers for new columns, then uses another column for source values. For
example, we can “move” values in the survival column to the top and fill them with
values from count:
library(reshape2)
dcast(plum, length + time ~ survival, value.var="count")
length      time dead alive
long   at_once   84   156
long in_spring  156    84
short   at_once  133   107
short in_spring  209    31
368 | Chapter 15: Getting Your Data into Shape
C# Windows Viewer - Image and Document Conversion & Rendering in
standard image and document in .NET class applications independently, without using other external third-party dependencies like Adobe Acrobat. Convert to PDF.
add pages to pdf document; adding page numbers pdf file
VB.NET PDF: How to Create Watermark on PDF Document within
Using this VB.NET Imaging PDF Watermark Add-on, you image (such as business's logo) on any desired PDF page. And with our PDF Watermark Creator, users need no
add pages to an existing pdf; adding page numbers in pdf
Discussion
The dcast() function requires you to specify the ID variables (those that remain in
columns) and the variable variables (those that get “moved to the top”). This is done
with a formula where the ID variables are before the tilde (~) and the variable variables
are after it.
In the preceding example, there are two ID variables and one variable variable. In the
next one, there is one ID variable and two variable variables. When there is more than
one variable variable, the values are combined with an underscore:
dcast(plum, time ~ length + survival, value.var="count")
time long_dead long_alive short_dead short_alive
at_once        84        156        133         107
in_spring       156         84        209          31
See Also
See Recipe 15.19 to do conversions in the other direction, from wide to long.
See the unstack() function for another way of converting from long to wide.
15.21. Converting a Time Series Object to Times
and Values
Problem
You have a time series object that you wish to convert to numeric vectors representing
the time and values at each time.
Solution
Use the time() function to get the time for each observation, then convert the times
and values to numeric vectors with as.numeric():
# Look at nhtemp Time Series object
nhtemp
Time Series:
Start = 1912
End = 1971
Frequency = 1
[1] 49.9 52.3 49.4 51.1 49.4 47.9 49.8 50.9 49.3 51.9 50.8 49.6 49.3 50.6 48.4
[16] 50.7 50.9 50.6 51.5 52.8 51.8 51.1 49.8 50.2 50.4 51.6 51.8 50.9 48.8 51.7
[31] 51.0 50.6 51.7 51.5 52.1 51.3 51.0 54.0 51.4 52.7 53.1 54.6 52.0 52.0 50.9
[46] 52.6 50.2 52.6 51.6 51.9 50.5 50.9 51.7 51.4 51.7 50.8 51.9 51.8 51.9 53.0
15.21. Converting a Time Series Object to Times and Values | 369
VB.NET PowerPoint: VB Code to Draw and Create Annotation on PPT
limitations (other documents are compatible, including PDF, TIFF, MS VB.NET PPT: VB Code to Add Embedded Image Object to PPT Page. '''&ltsummary> ''' Draw
adding page to pdf in preview; add a page to a pdf file
C# Excel - Excel Conversion & Rendering in C#.NET
independently, without using other external third-party dependencies like Adobe Acrobat. Excel to PDF Conversion. This page will tell you how to use XDoc.Excel
add a page to a pdf in reader; add a page to pdf file
# Get times for each observation
as.numeric(time(nhtemp))
[1] 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926
[16] 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941
[31] 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956
[46] 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971
# Get value of each observation
as.numeric(nhtemp)
[1] 49.9 52.3 49.4 51.1 49.4 47.9 49.8 50.9 49.3 51.9 50.8 49.6 49.3 50.6 48.4
[16] 50.7 50.9 50.6 51.5 52.8 51.8 51.1 49.8 50.2 50.4 51.6 51.8 50.9 48.8 51.7
[31] 51.0 50.6 51.7 51.5 52.1 51.3 51.0 54.0 51.4 52.7 53.1 54.6 52.0 52.0 50.9
[46] 52.6 50.2 52.6 51.6 51.9 50.5 50.9 51.7 51.4 51.7 50.8 51.9 51.8 51.9 53.0
# Put them in a data frame
nht <- data.frame(year=as.numeric(time(nhtemp)), temp=as.numeric(nhtemp))
nht
year temp
1912 49.9
1913 52.3
...
1970 51.9
1971 53.0
Discussion
Time series objects efficiently store information when there are observations at regular
time intervals, but for use with ggplot2, they need to be converted to a format that
separately represents times and values for each observation.
Some time series objects are cyclical. The presidents data set, for example, contains
four observations per year, one for each quarter:
presidents
Qtr1 Qtr2 Qtr3 Qtr4
1945   NA   87   82   75
1946   63   50   43   32
1947   35   60   54   55
...
1972   49   61   NA   NA
1973   68   44   40   27
1974   28   25   24   24
To convert it to a two-column data frame with one column representing the year with
fractional values, we can do the same as before:
pres_rating <- data.frame(
year    = as.numeric(time(presidents)),
370 | Chapter 15: Getting Your Data into Shape
BMP to PDF Converter | Convert Bitmap to PDF, Convert PDF to BMP
Also designed to be used add-on for .NET Image SDK, RasterEdge Bitmap Powerful image converter for Bitmap and PDF files; No need for Adobe Acrobat Reader &
add page to pdf without acrobat; add pages to pdf acrobat
JPEG to PDF Converter | Convert JPEG to PDF, Convert PDF to JPEG
It can be used standalone. JPEG to PDF Converter is able to convert image files to PDF directly without the software Adobe Acrobat Reader for conversion.
add pdf pages to word; add page to pdf online
rating  = as.numeric(presidents)
)
pres_rating
year rating
1945.00     NA
1945.25     87
1945.50     82
...
1974.25     25
1974.50     24
1974.75     24
It is also possible to store the year and quarter in separate columns, which may be useful
in some visualizations:
pres_rating2 <- data.frame(
year    = as.numeric(floor(time(presidents))),
quarter = as.numeric(cycle(presidents)),
rating  = as.numeric(presidents)
)
pres_rating2
year quarter rating
1945       1     NA
1945       2     87
1945       3     82
...
1974       2     25
1974       3     24
1974       4     24
See Also
The zoo package is also useful for working with time series objects.
15.21. Converting a Time Series Object to Times and Values | 371
APPENDIX A
Introduction to ggplot2
Most of the recipes in this book involve the ggplot2 package, written by Hadley Wick‐
ham. ggplot2 has only been around for a few years, but in that short time it has attracted
many users in the R community because of its versatility, clear and consistent interface,
and beautiful output.
ggplot2 takes a different approach to graphics than other graphing packages in R. It gets
its name from Leland Wilkinson’s grammar of graphics, which provides a formal, struc‐
tured perspective on how to describe data graphics.
Even though this book deals largely with ggplot2, I don’t mean to say that it’s the be-all
and end-all of graphics in R. For example, I sometimes find it faster and easier to inspect
and explore data with R’s base graphics, especially when the data isn’t already structured
properly for use with ggplot2. There are some things that ggplot2 can’t do, or can’t do
as well as other graphing packages. There are other things that ggplot2 can do, but that
specialized packages are better suited to handling. For most purposes, though, I believe
that ggplot2 gives the best return on time invested, and it provides beautiful, publication-
ready results.
Another excellent package for general-purpose graphs is lattice, by Deepyan Sarkar,
which is an implementation of trellis graphics. It is included as part of the base instal‐
lation of R.
If you want a deeper understanding of ggplot2, read on!
Background
In a data graphic, there is a mapping (or correspondence) from properties of the data
to visual properties in the graphic. The data properties are typically numerical or cate‐
gorical values, while the visual properties include the x and y positions of points, colors
of lines, heights of bars, and so on. A data visualization that didn’t map the data to visual
373
properties wouldn’t be a data visualization. On the surface, representing a number with
an x coordinate may seem very different from representing a number with a color of a
point, but at an abstract level, they are the same. Everyone who has made data graphics
has at least an implicit understanding of this. For most of us, that’s where our under‐
standing remains.
In the grammar of graphics, this deep similarity is not just recognized, but made central.
In R’s base graphics functions, each mapping of data properties to visual properties is
its own special case, and changing the mappings may require restructuring your data,
issuing completely different graphing commands, or both.
To illustrate, I’ll show a graph made from the simpledat data set from the gcookbook
package:
library(gcookbook) # For the data set
simpledat
A1 A2 A3
B1 10  7 12
B2  9 11  6
This will make a simple grouped bar graph, with the As going along the x-axis and the
bars grouped by the Bs (Figure A-1):
barplot(simpledat, beside=TRUE)
Figure A-1. A bar graph made with barplot()
One thing we might want to do is switch things up so the Bs go along the x-axis and the
As are used for grouping. To do this, we need to restructure the data by transposing the
matrix:
374 | Appendix A: Introduction to ggplot2
Documents you may be interested
Documents you may be interested