《R语言医学数据分析实战》学习记录|第二章 创建数据集
<h1 id="chapter_2">第二章 创建数据集</h1><h2 id="内容记录">内容记录</h2>
<ol>
<li>基本数据结构
<ol>
<li>向量:向量下标从0开始;向量下标可取负值,表示去除指定位置上的元素;R中运算都是向量化的,类似pandas中的运算逻辑;常用的统计函数;</li>
<li>因子:名义型没有顺序关系,有序型分层级和顺序,区别靠定义时区分:定义时是否设定labels的顺序(order=TRUE)</li>
<li>矩阵</li>
<li>数组:数组多指矩阵</li>
<li>列表:可以不同类型对象混合组成,用<code>$(列名)</code>访问列表中的成员</li>
<li>数据框dataframe:医学数据集最常用,大部分结构化的数据均以数据框的形式呈现;行为观测,列为变量;每列可以是不同模式的数据;与pandas中的dataframe数据结构类似;微观结构和列表类似,行列对齐的特殊列表;使用<code>$(列名)</code>调用数据框的列</li>
<li>数据类型的判断和转换。</li>
</ol>
</li>
<li>获取数据
<ol>
<li>内置数据集</li>
<li>模拟特定分布的数据,如rnorm</li>
<li>数据文件导入(<code>read.csv()</code>和<code>read.table()</code>)</li>
<li>导出数据(<code>write.csv()</code>)</li>
</ol>
</li>
</ol>
<h2 id="常用函数">常用函数</h2>
<table>
<thead>
<tr>
<th>函数</th>
<th>来源包</th>
<th>功能描述</th>
</tr>
</thead>
<tbody>
<tr>
<td>var()</td>
<td>stats</td>
<td>求方差</td>
</tr>
<tr>
<td>sd()</td>
<td>stats</td>
<td>求标准差</td>
</tr>
<tr>
<td>median()</td>
<td>stats</td>
<td>求中位数</td>
</tr>
<tr>
<td>sum()</td>
<td>base</td>
<td>求和</td>
</tr>
<tr>
<td>max()</td>
<td>base</td>
<td>求最大值</td>
</tr>
<tr>
<td>min()</td>
<td>base</td>
<td>求最小值</td>
</tr>
<tr>
<td>c()</td>
<td>base</td>
<td>创建向量</td>
</tr>
<tr>
<td>colMeans()</td>
<td>base</td>
<td>按列求均值</td>
</tr>
<tr>
<td>rowSums()</td>
<td>base</td>
<td>按行求和</td>
</tr>
<tr>
<td>factor()</td>
<td>base</td>
<td>转换为因子</td>
</tr>
<tr>
<td>levels()</td>
<td>base</td>
<td>或是因子的水平值</td>
</tr>
<tr>
<td>rep()</td>
<td>base</td>
<td>重复对象</td>
</tr>
<tr>
<td>t()</td>
<td>base</td>
<td>矩阵转置</td>
</tr>
<tr>
<td>View()</td>
<td>base</td>
<td>查看对象</td>
</tr>
</tbody>
</table>
<h2 id="习题">习题</h2>
<h3 id="2-1-r中的数据结构">2-1 R中的数据结构:</h3>
<p>R 语言中包括哪些数据结构?矩阵和数据框的区别是什么?</p>
<pre><code>1. R中的数据结构:向量,因子,矩阵,数组,列表,数据框等;
2. 矩阵的元素都是同一类数据;但数据框和列一样,每一列可以是不同类型的数据。
</code></pre>
<h3 id="2-2-创建数据框dataframe变量">2-2 创建数据框data.frame变量</h3>
<p>请用函数 data.frame( ) 创建一个包含三个变量的数据框。其中第一个变量 x 是小写字母 a 到 j,第二个变量 y 是数字 1 到10,第三个变量 z 是10 个1。</p>
<pre><code>x<-c('a','b','c','d','e','f','g','h','i','j')
y<-c(1:10)
z<-rep('1',10)
data<-data.frame(x,y,z)
print(data)
</code></pre>
<h3 id="2-3-加载数据集并查看帮助">2-3 加载数据集并查看帮助</h3>
<p>请将 survival 包里的数据集 lung 加载到工作空间中。</p>
<pre><code># install.packages("survival")
library(survival)
View(lung)
?lung
</code></pre>
<h3 id="2-4-生成数据分布">2-4 生成数据分布</h3>
<p>请用函数 rnorm( ) 生成服从均值为 168、标准差为 10 的正态分布的 1000 个随机数,然后使用函数 hist( ) 查看该数据的分布。</p>
<pre><code>r24<- rnorm(1000, mean = 168, sd = 10)
hist(r24)
</code></pre>
<h3 id="2-5-文件读写">2-5 文件读写</h3>
<p>请用函数 write.csv( ) 将 datasets 包里面的数据集 iris 导出为一个 .csv 文件,然后再用函数 read.csv( ) 读入该文件。比较读入的数据集和原始数据集,查看是否存在差异。</p>
<pre><code>d25<-datasets::iris
write.csv(d25,"d25-iris.csv")
d25.r<-read.csv("d25-iris.csv")
View(d25.r)
</code></pre><br><br>
来源:https://www.cnblogs.com/minibenifit/p/19256967
頁:
[1]