专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

如何合并数据在R使用R合并,dplyr,或data。tabl

  R有许多通过公共列连接数据帧的快速、优雅的方法。我想向你们展示其中的三个:
  1。基数R的merge()函数
  2。Dplyr的join函数族
  3。数据。表的括号语法
  一、获取并导入数据
  在这个例子中,我将使用我最喜欢的演示数据集之一来自美国交通统计局的航班延误时间。如果您想跟随,请访问http:bit。lyUSFlightDelays并下载您选择的时间段的数据,包括航班日期、ReportingAirline、出发地、目的地和出发时间。还可以获取ReportingAirline的查找表。
  或者,你可以下载这两个数据集,加上我在一个文件中的R代码和一个解释不同类型的数据合并的PowerPoint,在这里:
  要用基本R读入文件,我首先解压缩航班延误文件,然后用read。csv()导入航班延误数据和代码查找文件。如果您正在运行该代码,则您下载的延迟文件的名称可能与下面代码中的名称不同。另外,请注意查找文件不寻常的。csv扩展名。
  unzip(673598238TONTIMEREPORTING。zip)
  mydfread。csv(673598238TONTIMEREPORTING。csv,
  sep,,quote)
  mylookupread。csv(LUNIQUECARRIERS。csv,
  quote,sep,)
  接下来,我将用head()查看这两个文件:
  head(mydf)
  FLDATEOPUNIQUECARRIERORIGINDESTDEPDELAYNEWX120190801DLATLDFW31NA220190801DLDFWATL0NA320190801DLIAHATL40NA420190801DLPDXSLC0NA520190801DLSLCPDX0NA620190801DLDTWATL10NA
  head(mylookup)
  CodeDescription102QTitanAirways204QTradewindAviation305QComluxAviation,AG406QMasterTopLinhasAereasLtd。507QFlairAirlinesLtd。609QSwiftAir,LLCdbaEasternAirLinesdbaEastern
  二、与底R合并
  mydf延迟数据帧只有航空公司信息的代码。我想用mylookup中的航空公司名称添加一列。一种基于R的方法是使用merge()函数,使用基本语法merge(df1,df2)。数据帧1和数据帧2的顺序无关紧要,但无论哪个是第一个都被认为是x,第二个是y。华东CIO大会、华东CIO联盟、CDLC中国数字化灯塔大会、CXO数字化研学之旅、数字化江湖讲武堂,数字化江湖大侠传、数字化江湖论剑、CXO系列管理论坛(陆家嘴CXO管理论坛、宁波东钱湖CXO管理论坛等)、数字化转型网,走进灯塔工厂系列、ECIO大会等
  如果你想要连接的列没有相同的名称,你需要告诉归并你想要连接的列:by。X为X数据帧的列名,由。Y表示Y,比如merge(df1,df2,by。xdf1ColName,by。ydf2ColName)。
  您还可以告诉归并是否需要包含参数all的所有行,包括没有匹配的行,还是只需要匹配的行。X和所有。y。在这种情况下,我想要所有的行从延迟数据;如果查找表中没有航空公司代码,我仍然需要该信息。但我不需要查找表中不在延迟数据中的行(其中有一些已不再飞行的旧航空公司的代码)。因此,所有。xTRUE但所有。yFALSE。代码如下:
  joineddfmerge(mydf,mylookup,by。xOPUNIQUECARRIER,
  by。yCode,all。xTRUE,all。yFALSE)
  新的连接数据帧包括一个名为Description的列,其中包含基于航空公司代码的航空公司名称:
  head(joineddf)
  OPUNIQUECARRIERFLDATEORIGINDESTDEPDELAYNEWXDescription19E20190812JFKSYR0NAEndeavorAirInc。29E20190812TYSDTW0NAEndeavorAirInc。39E20190812ORFLGA0NAEndeavorAirInc。49E20190813IAHMSP6NAEndeavorAirInc。59E20190812DTWJFK58NAEndeavorAirInc。69E20190812SYRJFK0NAEndeavorAirInc。
  三、与dplyr连接
  dplyr包的连接函数使用SQL数据库语法。左连接意味着:包括左边的所有内容(merge()中的x数据帧是什么)和从右边(y)数据帧匹配的所有行。如果联接列有相同的名称,你只需要leftjoin(x,y)。如果它们没有相同的名称,你需要一个by参数,比如leftjoin(x,y,byc(df1ColNamedf2ColName))。
  注意by的语法:它是一个命名向量,左右列名都用引号括起来。
  更新:从dplyr1。1。0版本开始(2023年1月29日在CRAN上),dplyr连接有一个额外的by语法,使用joinby():
  leftjoin(x,y,byjoinby(df1ColNamedf2ColName))
  新的joinby()帮助函数使用了不带引号的列名和布尔运算符,包的作者说,这个运算符在R上下文中比在c上下文中更有意义(col1col2),因为是为了给变量赋值,而不是测试是否相等。
  左连接保留左数据帧中的所有行,只匹配来自右数据帧的行。
  下面是使用leftjoin()导入和合并两个数据集的代码。它首先加载dplyr和readr包,然后用readcsv()读入这两个文件。当使用readcsv()时,我不需要先解压缩文件。
  library(dplyr)
  library(readr)
  mytibblereadcsv(673598238TONTIMEREPORTING。zip)
  mylookuptibblereadcsv(LUNIQUECARRIERS。csv)
  joinedtibbleleftjoin(mytibble,mylookuptibble,
  byjoinby(OPUNIQUECARRIERCode))
  注意,dplyr的旧by语法没有joinby()仍然有效
  joinedtibbleleftjoin(mytibble,mylookuptibble,
  byc(OPUNIQUECARRIERCode))
  Readcsv()创建tibbles,这是一种具有一些额外功能的数据帧类型。Leftjoin()将两者合并。看一下语法:在这种情况下,顺序很重要。Leftjoin()意味着包含左边或第一个数据集的所有行,但只包含与第二个数据集匹配的行。并且,因为我需要通过两个不同名称的列来连接,所以我包含了一个by参数。
  在dplyr的开发版中,新的连接语法是:
  joinedtibble2leftjoin(mytibble,mylookuptibble,
  byjoinby(OPUNIQUECARRIERCode))
  但是,由于大多数人可能都有CRAN版本,所以在本文的其余部分中,我将使用dplyr最初的命名向量语法,直到joinby()成为CRAN版本的一部分。
  我们可以使用dplyr的glimpse()函数查看结果的结构,这是查看数据帧顶部几项的另一种方式:
  glimpse(joinedtibble)Observations:658,461Variables:7
  FLDATE20190801,20190801,20190801,20190801,20190801
  OPUNIQUECARRIERDL,DL,DL,DL,DL,DL,DL,DL,DL,DL,
  ORIGINATL,DFW,IAH,PDX,SLC,DTW,ATL,MSP,JF
  DESTDFW,ATL,ATL,SLC,PDX,ATL,DTW,JFK,MS
  DEPDELAYNEW31,0,40,0,0,10,0,22,0,0,0,17,5,2,0,0,8,0,
  X6NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,
  DescriptionDeltaAirLinesInc。,DeltaAirLinesInc。,DeltaAir
  这个合并的数据集现在有一个新列,列中包含航空公司的名称。如果您自己运行这段代码的一个版本,您可能会注意到dplyr比基数R快得多。
  原文:
  Rhasanumberofquick,elegantwaystojoindataframesbyacommoncolumn。I’dliketoshowyouthreeofthem:
  baseR’smerge()function
  dplyr’sjoinfamilyoffunctions
  data。table’sbracketsyntaxGetandimportthedata
  ForthisexampleI’lluseoneofmyfavoritedemodatasetsflightdelaytimesfromtheU。S。BureauofTransportationStatistics。Ifyouwanttofollowalong,headtohttp:bit。lyUSFlightDelaysanddownloaddataforthetimeframeofyourchoicewiththecolumnsFlightDate,ReportingAirline,Origin,Destination,andDepartureDelayMinutes。AlsogetthelookuptableforReportingAirline。
  Or,youcandownloadthesetwodatasetsplusmyRcodeinasinglefileandaPowerPointexplainingdifferenttypesofdatamergeshere:
  ToreadinthefilewithbaseR,I’dfirstunziptheflightdelayfileandthenimportbothflightdelaydataandthecodelookupfilewithread。csv()。Ifyou’rerunningthecode,thedelayfileyoudownloadedwilllikelyhaveadifferentnamethaninthecodebelow。Also,notethelookupfile’sunusual。csvextension。
  unzip(673598238TONTIMEREPORTING。zip)
  mydfread。csv(673598238TONTIMEREPORTING。csv,
  sep,,quote)
  mylookupread。csv(LUNIQUECARRIERS。csv,
  quote,sep,)
  Next,I’lltakeapeekatbothfileswithhead():
  head(mydf)
  FLDATEOPUNIQUECARRIERORIGINDESTDEPDELAYNEWX120190801DLATLDFW31NA220190801DLDFWATL0NA320190801DLIAHATL40NA420190801DLPDXSLC0NA520190801DLSLCPDX0NA620190801DLDTWATL10NA
  head(mylookup)
  CodeDescription102QTitanAirways204QTradewindAviation305QComluxAviation,AG406QMasterTopLinhasAereasLtd。507QFlairAirlinesLtd。609QSwiftAir,LLCdbaEasternAirLinesdbaEasternMergeswithbaseR
  Themydfdelaydataframeonlyhasairlineinformationbycode。I’dliketoaddacolumnwiththeairlinenamesfrommylookup。OnebaseRwaytodothisiswiththemerge()function,usingthebasicsyntaxmerge(df1,df2)。Theorderofdataframe1anddataframe2doesntmatter,butwhicheveroneisfirstisconsideredxandthesecondoneisy。
  Ifthecolumnsyouwanttojoinbydon’thavethesamename,youneedtotellmergewhichcolumnsyouwanttojoinby:by。xforthexdataframecolumnname,andby。yfortheyone,suchasmerge(df1,df2,by。xdf1ColName,by。ydf2ColName)。
  Youcanalsotellmergewhetheryouwantallrows,includingoneswithoutamatch,orjustrowsthatmatch,withtheargumentsall。xandall。y。Inthiscase,I’dlikealltherowsfromthedelaydata;ifthere’snoairlinecodeinthelookuptable,Istillwanttheinformation。ButIdon’tneedrowsfromthelookuptablethataren’tinthedelaydata(therearesomecodesforoldairlinesthatdon’tflyanymoreinthere)。So,all。xequalsTRUEbutall。yequalsFALSE。Heresthecode:
  joineddfmerge(mydf,mylookup,by。xOPUNIQUECARRIER,
  by。yCode,all。xTRUE,all。yFALSE)
  ThenewjoineddataframeincludesacolumncalledDescriptionwiththenameoftheairlinebasedonthecarriercode:
  head(joineddf)
  OPUNIQUECARRIERFLDATEORIGINDESTDEPDELAYNEWXDescription19E20190812JFKSYR0NAEndeavorAirInc。29E20190812TYSDTW0NAEndeavorAirInc。39E20190812ORFLGA0NAEndeavorAirInc。49E20190813IAHMSP6NAEndeavorAirInc。59E20190812DTWJFK58NAEndeavorAirInc。69E20190812SYRJFK0NAEndeavorAirInc。Joinswithdplyr
  ThedplyrpackageusesSQLdatabasesyntaxforitsjoinfunctions。Aleftjoinmeans:Includeeverythingontheleft(whatwasthexdataframeinmerge())andallrowsthatmatchfromtheright(y)dataframe。Ifthejoincolumnshavethesamename,allyouneedisleftjoin(x,y)。Iftheydon’thavethesamename,youneedabyargument,suchasleftjoin(x,y,byc(df1ColNamedf2ColName))。
  Notethesyntaxforby:It’sanamedvector,withboththeleftandrightcolumnnamesinquotationmarks。
  Update:Startingwithdplyrversion1。1。0(onCRANasofJanuary29,2023),dplyrjoinshaveanadditionalbysyntaxusingjoinby():
  leftjoin(x,y,byjoinby(df1ColNamedf2ColName))
  Thenewjoinby()helperfunctionusesunquotedcolumnnamesandthebooleanoperator,whichpackageauthorssaymakesmoresenseinanRcontextthanc(col1col2),sinceismeantforassigningavaluetoavariable,nottestingforequality。
  Aleftjoinkeepsallrowsintheleftdataframeandonlymatchingrowsfromtherightdataframe。
  Thecodetoimportandmergebothdatasetsusingleftjoin()isbelow。Itstartsbyloadingthedplyrandreadrpackages,andthenreadsinthetwofileswithreadcsv()。Whenusingreadcsv(),Idon’tneedtounzipthefilefirst。
  library(dplyr)
  library(readr)
  mytibblereadcsv(673598238TONTIMEREPORTING。zip)
  mylookuptibblereadcsv(LUNIQUECARRIERS。csv)
  joinedtibbleleftjoin(mytibble,mylookuptibble,
  byjoinby(OPUNIQUECARRIERCode))
  Notethatdplyrsolderbysyntaxwithoutjoinby()stillworks
  joinedtibbleleftjoin(mytibble,mylookuptibble,
  byc(OPUNIQUECARRIERCode))
  readcsv()createstibbles,whichareatypeofdataframewithsomeextrafeatures。leftjoin()mergesthetwo。Takealookatthesyntax:Inthiscase,ordermatters。leftjoin()meansincludeallrowsontheleft,orfirst,dataset,butonlyrowsthatmatchfromthesecondone。And,becauseIneedtojoinbytwodifferentlynamedcolumns,Iincludedabyargument。
  Thenewjoinsyntaxinthedevelopmentonlyversionofdplyrwouldbe:
  joinedtibble2leftjoin(mytibble,mylookuptibble,
  byjoinby(OPUNIQUECARRIERCode))
  SincemostpeoplelikelyhavetheCRANversion,however,Iwillusedplyrsoriginalnamedvectorsyntaxintherestofthisarticle,untiljoinby()becomespartoftheCRANversion。
  Wecanlookatthestructureoftheresultwithdplyr’sglimpse()function,whichisanotherwaytoseethetopfewitemsofadataframe:
  glimpse(joinedtibble)Observations:658,461Variables:7
  FLDATE20190801,20190801,20190801,20190801,20190801
  OPUNIQUECARRIERDL,DL,DL,DL,DL,DL,DL,DL,DL,DL,
  ORIGINATL,DFW,IAH,PDX,SLC,DTW,ATL,MSP,JF
  DESTDFW,ATL,ATL,SLC,PDX,ATL,DTW,JFK,MS
  DEPDELAYNEW31,0,40,0,0,10,0,22,0,0,0,17,5,2,0,0,8,0,
  X6NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,
  DescriptionDeltaAirLinesInc。,DeltaAirLinesInc。,DeltaAir
  Thisjoineddatasetnowhasanewcolumnwiththenameoftheairline。Ifyourunaversionofthiscodeyourself,you’llprobablynoticethatdplyriswayfasterthanbaseR。
  CXO联盟(CXOunion)是一家聚焦于CIO,CDO,cto,ciso,cfo,coo,chro,cpo,ceo等人群的平台组织,其中在CIO会议领域的领头羊,目前举办了大量的CIO大会、CIO论坛、CIO活动、CIO会议、CIO峰会、CIO会展。如华东CIO会议、华南cio会议、华北cio会议、中国cio会议、西部CIO会议。在这里,你可以参加大量的IT大会、IT行业会议、IT行业论坛、IT行业会展、数字化论坛、数字化转型论坛,在这里你可以认识很多的首席信息官、首席数字官、首席财务官、首席技术官、首席人力资源官、首席运营官、首席执行官、IT总监、财务总监、信息总监、运营总监、采购总监、供应链总监。
  数字化转型网(www。szhzxw。cn资讯媒体,是企业数字化转型的必读参考,在这里你可以学习大量的知识,如财务数字化转型、供应链数字化转型、运营数字化转型、生产数字化转型、人力资源数字化转型、市场营销数字化转型。通过关注我们的公众号,你就知道如何实现企业数字化转型?数字化转型如何做?
  【CXO联盟部分会员】兴达投资集团CEO、江苏中超投资集团CEO、江苏江润铜业CEO、浙江协和集团CEO、山东垦利石化集团CEO、江苏长电科技股份CEO、重庆钢铁股份CEO、天合光能股份CEO、江苏恒瑞医药股份CEO、奥盛集团CEO、山鹰国际控股股份公司CEO、成都蛟龙投资CEO、宜宾天原集团股份CEO、胜达集团CEO、三宝集团股份CEO、山西晋城钢铁控股集团CEO、河北鑫达钢铁集团CEO、深圳市中金岭南有色金属股份CEO、宁波申洲针织CEO、广西柳工集团CEO、苏州创元投资发展(集团)CEO、邯郸正大制管CEO、人福医药集团股份公司CEO、浙江升华控股集团CEO、河南济源钢铁(集团)CEO、达利食品集团CEO、广西汽车集团CEO、孝义市鹏飞实业CEO、宗申产业集团CEO、天津纺织集团(控股)CEO、晶澳太阳能科技股份CEO、唐山瑞丰钢铁(集团)CEO、重庆万达薄板CEO、唐山三友集团CEO、凌源钢铁集团CEO、宁波博洋控股集团CEO、天津市医药集团CEO、福建省汽车工业集团CEO、山西安泰控股集团CEO、牧原食品股份CEO、上海仪电(集团)CEO、上海胜华电缆(集团)CEO、大亚科技集团CEO、天津恒兴集团CEO、攀枝花钢城集团CEO、桂林力源粮油食品集团CEO、万马联合控股集团CEO、山东鑫海科技股份CEO、江苏上上电缆集团CEO、广西贵港钢铁集团CEO、久立集团股份CEO

5款系统优化工具分享,给你的电脑提提速大家随着使用电脑的时间越久,电脑上对于设置的改动就越多,有时候自己都不知道改了哪些设置,导致有些软件运行的时候总是发生错误,缺少权限什么的。还有就是在重新安装系统之后,每个选项都需清纯甜美JK服百褶裙说到短裙,我们可能会想到百褶裙牛仔裙皮裙。说实话,这些也是生活中比较常见的短裙款式。其实还有一种特别的短裙,通常出现在西装里,就是JK制服,类似洛丽塔,有自己独特的魅力。JK是日语深层补水保湿抗皱眼霜推荐让你告别熊猫眼,使肌肤保持紧致弹性深层补水保湿抗皱眼霜推荐让你告别熊猫眼,使肌肤保持紧致弹性!NAYASA眼霜主打比较温和无添加的宝贝,轻敏感肌也可使用,不过这种开封了,都尽量要在三个月内使用完奥眼霜的质地是凝胶状平实的语言最具说服力朴实无华的语言是真挚心灵的表达,是美好情感的展现。因而,语言的朴素美来自处事态度,话如其人,言为心声,平时为人处事质朴真诚,说话也就自然不会扭捏做作。著名作家丁马菲说过尽量不说意义稻草人头条创作挑战赛谨以此文,纪念我在东莞的工作和生活。我是一个稻草人,迎接黎明,送别黄昏。在稻田里守候着,照看着一片片金黄的收获之地,只有躯体,没有灵魂。是他让我重生,我无边的守候,只往事随风父亲还在的时候,每当父亲喊我的小名,我就觉得自己还小呢,还是父亲眼中的孩子。父亲一走,我突然觉得自己老了。把我带到世上的人都走了,漫漫人生路上,我的前方已经没有引路人了,我前面的路2022网络安全保险科技白皮书科技智绘网络安全保险新业态本文报告来源于2022网络安全保险科技白皮书报告,完整版共有39页,非常详尽,值得收藏。本报告下载领取方式详见文末本报告目录大纲如下第一章全球网络安全保险发展现状第二章网络安全保险新加坡电视台报道元宇宙SUSSSmartMeshMetaverseWorkshop专访元宇宙概念逐渐地风行起来并入选2021年度十大网络用语,足见其火爆程度。但是元宇宙究竟会如何影响我们的生活,大多数人仍然是一知半解。2022年1月17日,新加坡电视台晨光聚焦栏目组两万元价位的98吋巨幕电视,你心动了吗?随着装修风格的变化,客厅空间的布置越来越被看重。因为较大的空间面积,使得98吋巨幕电视走进寻常千万家。TCL一开始就瞄准的市场,近些年在大屏市场一直占有强有力份额,这次,TCL又发大屏电视大降价,双十一正是买大屏电视的好时机十年家电老司机,买家电不迷路!欢迎大家点赞关注!金九银十,到了下半年就是一年当中销售最旺的时候。彩电也不例外,一系列大型的促销开启,各大彩电厂家也投入大量促销费用。彩电价格有望再次读写性能强悍的金士顿极速固态U盘,为什么价格能做到这么低?说起固态U盘,现在很多小伙伴其实已经非常熟悉了固态U盘就是具备固态硬盘的闪存颗粒主控和通道以及读写性能和擦写寿命,但是同时具备U盘小巧便携的体积和身形,方便携带而且不怕摔不怕磕碰,
未中奖获赠票随机得华为手机!超级大乐透千万大赠送活动火热进行中!未中奖获赠票随机得华为手机!超级大乐透千万大赠送2022年卡塔尔世界杯正如火如荼的开展!本届世界杯可谓是冷门不断,看点十足!随着赛程的推进,相信球迷们的内心也愈发火热!当您在为世界破13万套,西安二手房涨跌榜出炉!曾经万人摇盘最高均价7万二手房的高速流通会挤压新房需求,西安11。19新政二手房无疑成为了最大赢家。根据新政,落户就能买1套,不落户6个月社保可买1套限购区二手房。其目的有两个一是降低购入门槛,促进二手房这有一则来自湖北商会的新消息!事关中大布匹市场头条创作挑战赛最近除了各区解除封控的消息外,还有这样一则消息也刷屏。没错,中大纺织商圈下周一即将复市啦!至此,本次疫情风暴中心的海珠区中大布匹市场终于要复工复产了。同时,抓眼球的消不离不弃恩恩爱爱明英宗朱祁镇对皇后钱氏的深情厚意英宗埋葬地十三陵全国重点保护单位钱氏是海洲人,她的父亲叫钱贵。钱氏出生年月不祥,病逝于公元1469年。进入宫中以后被英宗册立为皇后,公元1449年7月蒙古瓦刺部首领也先率军犯明,英为什么说荆轲刺秦注定是无用功?秦皇扫六合,七雄终归一大家好,我是小步。七雄归一系列31呈上,欢迎关注我主页的系列合集篇尾小作文值得一看一荆轲刺秦终究是无用功1荆轲功败垂成上一篇我们说到,在燕太子丹的催促之下,没有做好充分准备的荆轲只历史上突然消失的3个人,至今没人找到,他们到底去了哪里知名历史人物一般都是有确切史料记载的,但查看史料会发现,我国历史上有3个名人似乎凭空消失了。人除非死了,才会销声匿迹,若是活着,不管藏到哪里,都会在历史中留下痕迹。而这消失的3人,曾经的世界第七富国阿根廷的百年衰退与没落阿根廷,国人的了解大部分源于足球,蓝色飘逸的国旗和球衣,老球王马拉多纳,新球王梅西正在征战2022年世界杯,阿根廷男足被誉为潘帕斯雄鹰!其实阿根廷以前很富有,由于各种原因,阿根廷陷王一丁沅陵赋今日沅陵,古曰辰州巫傩神秘,水腾龙舟。碧波高枕,光风霁月丹丘昼夜常明,谁怜皓齿星眸?文脉不断,书藏二酉耕读传家,克绍箕裘。龙兴讲寺,转瞬已逾千年阳明先生,一度杖藜虎溪云沉阁影,最忆他是老蒋的爱将,49年他不起义也不去台,却出家做和尚,结局如何大家都比较了解戴笠的军统特务系统和戴笠本人,今天老丁要说的这个人物,是连戴笠都要敬称他一声大哥的著名大特务。这个人是军统特务系统的创始人之一,被称为蒋校长13太保之首的曾扩情。曾扩秦始皇长子扶苏不死,大秦不会三世而亡引言世人皆知秦始皇死后,秦二世胡亥继位,胡亥昏庸无能暴戾乱政加速了秦朝的灭亡,少有人知胡亥还有一个哥哥,也就是秦始皇长子公子扶苏。公子扶苏公子扶苏,嬴姓,是秦始皇嬴政长子,咸阳(今残垣断壁中的郭家巷2008年,笔者来到几乎已成废墟的郭家巷,它静静地躲在东河区繁华楼群里。走在那段破败的爬坡小路上,触摸临街已经变灰的青砖,百年前的历史仿佛回到了眼前,车马声婆姨们的嬉笑声权贵们的寒
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网