源代码-探索红葡萄酒质量

knitr::opts_chunk$set(message=FALSE,warning=FALSE,echo=FALSE)

单变量分析部分

setwd("~/Downloads")
project_data<- read.csv('r_ project _data.csv')
dim(project_data)
names(project_data)
summary(project_data)

数据由13个变量组成,1599种红葡萄酒的数据

library(ggplot2)
sum(is.na(project_data$quality))
ggplot(aes(x=quality),data=project_data)+
  geom_histogram()
summary(project_data$quality)

其中最差的葡萄酒质量是3,最好的葡萄酒质量是8,大多数的葡萄酒质量都在5和6之间;

ggplot(aes(x=alcohol),data=project_data)+
  geom_histogram()

酒精-长尾数据转为近似正态分布的数据

ggplot(aes(x=alcohol),data=project_data)+
  geom_histogram()+
  scale_x_log10()+
  scale_x_continuous(breaks=seq(0,15,1))
summary(project_data$alcohol)

大多数酒精度在9-11之间,酒精度较高的酒逐渐减少

ggplot(aes(x=residual.sugar),data=project_data)+
  geom_histogram()

从图中可以看出,糖量有一些异常值,对异常值进行处理

#project_data$chuli=transform(project_data,)
ggplot(aes(x=residual.sugar),data=project_data)+
  geom_histogram()+
  coord_trans(limx=c(0,8))
  scale_x_continuous(breaks=seq(0,8,1))

糖量大部分都在1-4之间,糖量大的酒逐渐减少,

查阅资料刻制,糖酸比是影响评价指标的一个重要因素,糖酸比指总糖和总算的比值。所以我将定义一个新的变量糖酸比。

project_data<-transform(project_data,ratio=(residual.sugar/fixed.acidity))


ggplot(aes(x=ratio),data=project_data)+
  geom_histogram()

对异常值进行处理,将图放大

ggplot(aes(x=ratio),data=project_data)+
  geom_histogram(binwidth = 0.01)+
  coord_trans(limx=c(0.1,0.5))+
  scale_x_continuous(breaks=seq(0,0.7,0.1))
ggplot(aes(x=ratio),data=project_data)+
  geom_histogram()+
  scale_x_log10()

对糖酸比通过log转换为近似正态分布的数据。

summary(project_data$ratio)

糖酸比大多数都在。023·0.33之间,中位数是0.27

ggplot(aes(x=fixed.acidity),data=project_data)+
  geom_histogram()+
  scale_x_continuous(breaks=seq(4,16,1))
summary(project_data$fixed.acidity)

大部分酒固定的酸度在7到9之间。

ggplot(aes(x=volatile.acidity),data=project_data)+
  geom_histogram(binwidth = 0.02)+
  scale_x_continuous(breaks=seq(0,1.6,0.2))
ggplot(aes(x=volatile.acidity),data=project_data)+
  geom_histogram(binwidth = 0.02)+
  scale_x_log10()+
  scale_x_continuous(breaks=seq(0,1,0.1))

summary(project_data$volatile.acidity)

挥发性酸越大酒越多,当挥发性酸到0.4后有个下降,挥发性酸在0.6的酒最多,之后挥发性酸越大的酒越少

ggplot(aes(x=citric.acid),data=project_data)+
  geom_histogram()
ggplot(aes(x=citric.acid),data=project_data)+
  geom_histogram(binwidth=0.01)+
  scale_x_continuous(breaks=seq(0,0.8,0.1))
summary(project_data$citric.acid)

没有柠檬酸的酒最多,其次是柠檬酸在0.5的酒。

ggplot(aes(x=chlorides),data=project_data)+
  geom_histogram(binwidth = 0.002)
ggplot(aes(x=chlorides),data=project_data)+
  geom_histogram(binwidth = 0.002)+
  coord_trans(limx=c(0.03,0.16))+
  scale_x_continuous(breaks=seq(0,0.2,0.05))
summary(project_data$chlorides)

氯化物去除过小过大的数据后,氯化物的含量大多数都在0.07-0.09之间,含量最低是0.012,含量最高是0.611。

ggplot(aes(x=free.sulfur.dioxide),data=project_data)+
  geom_histogram(binwidth =1)
ggplot(aes(x=free.sulfur.dioxide),data=project_data)+
  geom_histogram(binwidth =1)+
  scale_x_continuous(breaks=seq(0,60,2))+
  coord_trans(limx=c(0,40))
summary(project_data$free.sulfur.dioxide)

二氧化硫在6的酒最多,随后随着二氧化硫越多,酒越少。

ggplot(aes(x=pH),data=project_data)+
  geom_histogram()

pH呈现很好的正态分布,大多数都位于3.2-3.5之间,呈现酸性,整个pH值变化不大。

单变量分析小结

在数据集中有1599种红酒,具有13个特征,即13个输入变量,包括: x,固定酸度、挥发酸度、柠檬酸、残糖、氯化物、游离二氧化硫、二氧化硫总量、密度、pH、硫酸盐、酒精。以及一个有序因子,即输出变量质量。 其中质量分为3、4、5、6、7、8这几个级别。 其他意见; 大多数红酒的评级在5、6、7之间。

酒精含量的中位数为10.2。 * PH值大多位于3.2-3.5之间。
数据集中主要特征实质量和酒精,数据集中异常值,利用log()或者sqrt()手段将长尾数据转为近似正态分布的数据,这是为了更好的看出该数据的特征。

数据集中的主要特征是质量和酒精,我想确定那些特征影响了酒的质量,我怀疑酒精度和其他变量的一些组合一起影响了红酒的质量。

酒精度、硫酸盐、pH、挥发性酸等会影响红酒的质量,我认为酒精浓度和硫酸盐对质量影响最大。

我利用红酒的糖量和酸度创建了一个变量糖酸比。

在进行氯化物绘图去除了过大的数据,因为那部分氯化物似乎太大了,在进行糖酸比绘图的时候,将长尾数据通过log转换成近似正态分布的数据,对挥发性酸也进行了对数转换,转换后挥发性酸分布呈双峰态,挥发性酸在0.4和0.6最多,在0.5有个大的降低,将数据进行对数转换是为了更好的看出该数据的特征。

在散点图矩陈中,在每对变量之间有一个散点图网格

散点图矩陈不适用于分类变量,当变量分类时用箱线图或直方图

双变量分析

library(GGally)
#theme_set(theme_minimal(20))
#set.seed(1836)
#pf_subset<- project_data[,c(1:15)]
#names(pf_subset)
#ggpairs(pf_subset[sample.int(nrow(pf_subset),1000),])
#names(project_data)
#matrix(project_data)

pp_subset<- project_data[,c(1:13)]
ggpairs(pp_subset[sample.int(nrow(pp_subset),1599),])

从图中可以看出,酒精似乎和质量的相关性较强,

具体看看酒精和质量的关系

查看质量与酒精浓度的图

ggplot(aes(x=quality,y=alcohol),data=pp_subset)+
  geom_point()

抖动数据

ggplot(aes(x=quality,y=alcohol),data=pp_subset)+
  geom_point(alpha=0.3,position=position_jitter(h=0))

酒精浓度和质量分析

###酒精浓度
x <- as.factor(pp_subset$quality)
y <- pp_subset$alcohol
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',se=TRUE,
                         formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+
  ylab('alcohol')+xlab('quality')
ggp

随着酒精浓度的增加,似乎一个酒精浓度能对应很多个质量的酒精,但将其过度绘制(抖动)后,能看出酒精和质量具有一定的相关性。

经过散点图的绘制,发现单纯的散点图并不能特别清楚的表现变量之间的关系,而质量又是分等级的,所以将其作为分类变量,进行进一步的处理。

pp_subset$quality=factor(pp_subset$quality)
p2<-qplot(x=quality,y=alcohol,
          data=pp_subset,
          geom='boxplot')
p1<-ggplot(aes(x=quality,y=alcohol),data=pp_subset)+
  geom_point(alpha=0.3,position=position_jitter(h=0))


p2+geom_boxplot(col="blue",pch=16,cex=1)+
  geom_point(position="jitter",alpha=0.08)
names(project_data)
x <- as.factor(project_data$quality)
y <- project_data$ratio
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',se=TRUE,
                         formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+
  ylab('ratio')+xlab('quality')
ggp

从图中可以看出 糖酸比几乎根质量没有关系。

qplot(x=quality,y=sulphates,
      data=pp_subset,
      geom='boxplot')+geom_boxplot(col="blue",pch=16,cex=1)+
  geom_point(position="jitter",alpha=0.08)

x <- as.factor(pp_subset$quality)
y <- pp_subset$pH
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',
                         se=TRUE,formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+
  ylab('pH')+xlab('quality')
ggp
qplot(x=quality,y=free.sulfur.dioxide,
      data=pp_subset,
      geom='boxplot')+geom_boxplot(col="blue",pch=16,cex=1)+
  geom_point(position="jitter",alpha=0.08)+
  geom_smooth(method='lm',se=TRUE,
              formula=free.sulfur.dioxide~as.numeric(quality), 
              aes(x=as.numeric(quality), y=free.sulfur.dioxide))
x <- as.factor(pp_subset$quality)
y <- pp_subset$free.sulfur.dioxide
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',se=TRUE,
                         formula=y~as.numeric(x), aes(x=as.numeric(x), y=y))+ylab('free.sulfur.dioxide')+xlab('quality')
ggp

###硫酸盐
x <- as.factor(pp_subset$quality)
y <- pp_subset$sulphates
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',se=TRUE,
                         formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+
  ylab('sulphates')+xlab('quality')
ggp


建立红酒质量的线性模型

library(memisc)
m1<-lm(I(quality)~I(alcohol),data=pp_subset)
m2<-update(m1,~ . + pH)
m3<-update(m2,~ . + volatile.acidity)
m4<-update(m3,~ . + citric.acid)
m5<-update(m4,~ . +residual.sugar)
mtable(m1,m2,m3,m4,m5)


从上述图中可以看出,质量会随着酒精浓度,硫酸盐的添加###量以及pH值的变化而变化,整体而言酒精浓度越高质量越高###,在质量为5的时候酒精浓度反而下降了,因为这是专家主观测试而且还有很多异常值,所以忽略这个下降,

双变量分析小结

观察到质量与酒精度、硫酸盐的含量呈现正比关系,而与pH值呈现反比关系。

质量与酒精度有较强的相关性。

观察到糖酸比这个属性似乎与质量没有关联。并且糖量这个属性似乎与质量也没有什么关系。

发现最强的关系是红酒质量与酒精度成较强的正比关系。

多变量分析

ggplot(aes(x=alcohol,y=density,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  ylim(0.985,1.005)+
  labs(y="density",x="alcohol")+
  ggtitle('density vs alcohol vs quality')+
  theme(plot.title=element_text(hjust=0.5))

从图中可知质量几乎不受 酒精量和密度的共同影响。

ggplot(aes(x=alcohol,y=volatile.acidity,
           color=factor(quality)),data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="volatile.acidity",x="alcohol")+
  ggtitle('volatile.acidity vs alcohol vs quality')

在这张图中,当酒精浓度较低时,不管挥发性酸如何变化,质量都不高,当挥发性酸比较高时,不管酒精浓度如何变化,质量也不会高,只有在两者都在比较好的区间内,质量才会比较好。

绘制其他图

ggplot(aes(x=alcohol,y=citric.acid,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="citric.acid",x="alcohol")+
  ggtitle('citric.acid vs alcohol vs quality')

从图中可知当柠檬酸较低时,不管酒精量怎么变化,质量都不高。

ggplot(aes(x=alcohol,y=pH,color=factor(quality)),data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="pH",x="alcohol")+
  ggtitle('pH vs alcohol vs quality')
ggplot(aes(x=alcohol,y=sulphates,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="sulphates",x="alcohol")+
  ggtitle('sulphates vs alcohol vs quality')
ggplot(aes(x=volatile.acidity,y=citric.acid,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="citric.acid",x="volatile.acidity")+
  ggtitle('volatile.acidity vs citric.acid vs quality')
ggplot(aes(x=pH,y=volatile.acidity,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="volatile.acidity",x="pH")+
  ggtitle('volatile.acidity vs pH vs quality')
ggplot(aes(x=volatile.acidity,y=sulphates,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="sulphates",x="volatile.acidity")+
  ggtitle('sulphates vs volatile.acidity vs quality')

建立线性模型

m6<-lm(I(quality)~I(alcohol),data=pp_subset)
m7<-update(m1, ~ . + pH +alcohol)
m8<-update(m1, ~ . + pH +alcohol+sulphates)
m9<-update(m1, ~ . + pH +alcohol+sulphates+volatile.acidity)
m10<-update(m1, ~ . + pH +alcohol+sulphates+volatile.acidity+pH)

mtable(m6,m7,m8,m9,m10)

从以上图可以看出,三个变量之间没有明显的关系,在挥发性酸和酒精浓度极高或极低的时候,基本上评分就取决于这两者。在只有在两者都居中时,评分才会收到其他因素的影响。因此,专家的评分可能是根据以下的线索,当某一变量极高或极低时专家才能明细识别出受到那个变量的影响。

多变量分析小结

第三变量的加入对最后的判断似乎影响不大,只有其中某个值偏大或偏小的时候,评分才会受到这个值的影响,

我认为只有某一项特征偏高或偏低时,质量才会受到影响,因为质量评分是专家评估的,而专家评分我认为只有某个值偏高或偏低时 专家才会敏锐的察觉到,多变量分析证实了我的猜测。

用数据集建立了一个线性模型从质量和酒精度开始。

最终图的总结

ggplot(aes(x=quality),data=project_data)+
  geom_histogram()

大部分评分都在中间的5和6之间,相对较低和较高的评分都比较小,大部分酒都没有突出的地方。

图2

x <- as.factor(pp_subset$quality)
y <- pp_subset$alcohol
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',se=TRUE,
                         formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+
  labs(x='quality ',y='alcohol conten(mg/L)',
       title='alcohol with quality')+
  theme(plot.title=element_text(hjust=0.5))
ggp
x <- as.factor(pp_subset$quality)
y <- pp_subset$volatile.acidity
df <- data.frame(x=x,y=y)
ggp <- ggplot(df) 
ggp <- ggp + geom_boxplot(aes(x=as.factor(x),y=y))
ggp <- ggp + geom_smooth(method='lm',
                         se=TRUE,formula=y~as.numeric(x), 
                         aes(x=as.numeric(x), y=y))+labs(x='quality',y='volatile.acidity(g/dm^3)',
                                                                                          title='quality  with volatile.acidity')+
  theme(plot.title=element_text(hjust=0.5))
ggp

具有较高质量的红酒有较高的酒精浓度或较低的挥发性,而低质量的红酒则酒精浓度比较低,或挥发性酸比较高

图3

ggplot(aes(x=alcohol,y=volatile.acidity,color=factor(quality)),
       data=pp_subset)+
  geom_jitter(alpha=0.2)+
  scale_color_brewer(palette="Blues")+
  geom_smooth(method="lm",se=FALSE,size=1)+
  labs(y="volatile.acidity(mg/^3)",x="alcohol conten(mg/l)")+
  ggtitle('volatile.acidity vs alcohol vs quality')+
  theme(plot.title=element_text(hjust=0.5))

这图显示单一变量的影响远远大于两个变量的共同影响,只有酒精浓度不低,挥发性酸不高的情况下,质量才会比较不错。

反思总结

红酒数据集中有12个变量,1599瓶红酒信息,一开始进行了每个变量的分析,然后把其中一些变量和质量放在一起分析,最后进行了两个变量和红酒质量的分析,试图找出其中的相关性.在进行双变量分析的时候开始用的散点图进行分析,发现质量这个变量时分类变量没能很好的发现变量之间的关系,改成箱线图进行分析,双变量之间的相互关系就有了一个比较清晰表示的图,在进行多变量分析的时候,发现不管那三个变量,都没有很清晰的关系。在分析过程中对数据分析流程有了一定的了解如单变量——双变量——多变量,对变量分析也有了一些了解如对项目背景的了解找到主要特征变量进行分析。

对于这个数据因为红酒质量是专家评估的我认为这个质量只能说明差的酒质量评分不会高,好的酒质量评分不会差,从这点出发,我会关注评分好的酒和差的酒找出影响它们的主要因素。

所有变量标准化为0-1的值接着求所有变量跟质量的相关性

project_data(mtcars)
dd<-mtcars
scaler<-function(x){
  (x-min(x))/(max(x)-min(x))
}
cd<-scaler(project_data)
cor.test(X,Y) ##会返回置信度、置信区间和相关性,这里有三种相关性,自己可以设置
cor(cd)

参考文章-https://www.jianshu.com/p/a425acdaf77e

数据集-https://github.com/udacity/new-dand-advanced-china/blob/master/%E6%8E%A2%E7%B4%A2%E6%80%A7%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/%E9%A1%B9%E7%9B%AE/%E6%8E%A2%E7%B4%A2%E6%80%A7%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90_%E6%95%B0%E6%8D%AE%E9%9B%86.md

分析-http://www.jianshu.com/writer#/notebooks/4134080/notes/24577485

参考-参考-http://blog.csdn.net/qq_16365849/article/details/52734097

来一个学吧
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容

  • 最近整理笔记需要对菜单进行截图 可貌似菜单不太听话 一按鼠标或键盘就消失,print screen键除外 于是对比...
    龙家二少阅读 611评论 0 2
  • 眼神的力量 文/笑看人生 眼睛是心灵的窗口,是人类的指明灯,照亮了你前方的道路和全世界。生活中会有多少种你熟悉而又...
    笑看人生_b68a阅读 479评论 0 1
  • 人的一生,从某种意义上说,就是一场自己对自己的战争。每一个人的身上,都依附着两个自己:好的自己和坏的自己。让...
    Elaine安唯阅读 359评论 0 1
  • 开完会,写好请假条,背上背包,往高铁站出发。路上想过,你走了,我还要去吗? 还是要去的,好不容易请假2天,总不能窝...
    闲云者阅读 217评论 0 0