Python-零基礎(chǔ)學(xué)習(xí)Pandas知識(shí)點(diǎn)整理

? ? ?? 寫在前面癣朗,我也是一名python學(xué)習(xí)小白,從最近開始學(xué)習(xí)Python旺罢,由于之前沒(méi)有編程基礎(chǔ)旷余,學(xué)習(xí)起來(lái)比較費(fèi)勁,大部分時(shí)間都是從網(wǎng)上看寫教學(xué)視頻扁达,一邊學(xué)習(xí)正卧,一邊操作。但是大部分情況都是學(xué)完就忘跪解,真正讓自己寫代碼時(shí)炉旷,又總是依賴百度,進(jìn)步很慢,最近也在通過(guò)學(xué)習(xí)Python的數(shù)據(jù)處理包-pandas窘行,分享一些自己在實(shí)際學(xué)習(xí)過(guò)程中練習(xí)的一些代碼饥追,由于是類似比較,所以會(huì)有很多注釋罐盔,幫助自己記憶的但绕。【代碼內(nèi)容是可以直接復(fù)制到Pycharm中直接運(yùn)行的】 ---如需轉(zhuǎn)載惶看,請(qǐng)注明出處捏顺,謝謝。

請(qǐng)關(guān)注我的知乎:Pandas學(xué)習(xí)總結(jié)

import pandas as pd

import numpy as? np

第一部分:Pandas -Series數(shù)據(jù)處理

#pd.Series(data=list,index=[ ],name=”“) 創(chuàng)建:

#通過(guò)字典創(chuàng)建:

dic={"a":[1,2,3],"b":[4,5,6],"c":[7,8,9]}

s1 = pd.Series(data=dic,name="Random_num")? #通過(guò)字典來(lái)創(chuàng)建Series纬黎,字典的Key為index(由于dict中key值不允許重復(fù)幅骄,所以不會(huì)有重復(fù)index),value為Series的value

#通過(guò)字典創(chuàng)建Series也可以指定index本今,如果指定的index與字典中key不一致拆座,則會(huì)按照指定的index進(jìn)行添加,value值會(huì)填充為NaN

#通過(guò)列表創(chuàng)建:

list1=[1,2,3,4]

s2 = pd.Series(data=list1,index=["a","e","f","g"],name="Random")? #通過(guò)列表來(lái)創(chuàng)建Series冠息,可以指定index(可以重復(fù))懂拾,如果不指定默認(rèn)按0-整數(shù)作為index

#獲取Series的name

s1.name

#獲取Series的index

s1.index

#Series中增加數(shù)據(jù):append(to_append,ignore_index=False)? to_append為字典或Series,添加后不會(huì)改變?cè)璖eries的內(nèi)容铐达。

#通過(guò)Series或dict來(lái)增加

s3 = s1.append(s2,ignore_index=True)? #默認(rèn)為False岖赋,添加什么就顯示什么。 True表示為添加后的Series重新進(jìn)行賦index值0-

s3 = s2.append(pd.Series({"h":45}))? #其實(shí)括號(hào)中的字典已經(jīng)被轉(zhuǎn)換成Series再添加瓮孙,所以append添加Series也是只能添加Series類型唐断。

#向Series中添加other對(duì)象,add(other, level=None, fill_value=None, axis=0)

#使用add添加對(duì)象時(shí)杭抠,Series中必須為數(shù)字類型脸甘,否則會(huì)報(bào)錯(cuò)。

s2.add(5)? #就是在s2中每個(gè)value值都增加5偏灿。

s4= s3.add(s2,fill_value=10)? #如果兩個(gè)Series有相同的index丹诀,那么相同的index的值會(huì)直接相加,不同的index會(huì)以fill_value指定的值填充翁垂。

#需要注意: fill_value=10 表示兩個(gè)Series值進(jìn)行相加時(shí)铆遭,如果index不匹配,會(huì)取兩者的并集沿猜,沒(méi)有的那個(gè)Series先講值進(jìn)行填充為指定fill_value值枚荣,然后再兩者相加

#也就是說(shuō),兩個(gè)不同長(zhǎng)度的Series相加時(shí)啼肩,會(huì)先將兩者的長(zhǎng)度對(duì)其橄妆,缺失值填充NaN衙伶,然后再進(jìn)行相加,NaN+數(shù)字 =NaN? 所以也就能理解s4["d"]的值為55了害碾。

#Series中數(shù)據(jù)的選擇: get(key,default=None)? 如果獲取多個(gè)值矢劲,以列表的形式提供

s3.get("e")? #之間通過(guò)index得到對(duì)應(yīng)的值

s3.get(["a","e"],66)? #如果index中沒(méi)有值,則會(huì)輸出指定的值default = 66

#Series中通過(guò)切片取值: 切片取值后的值仍為Series,如果是單個(gè)中就是value了慌随。

type(s3[0])

s3[0:2]

# Series中相加運(yùn)算芬沉。

#對(duì)于均為數(shù)字類型的Series,兩Series進(jìn)行相加時(shí)儒陨,相同的index會(huì)進(jìn)行相加花嘶,不同的index按照NaN值進(jìn)行填充笋籽。

#NaN屬于float類型蹦漠,表示缺失數(shù)據(jù),可以參與運(yùn)算车海。

s5 = s2+s3

# Series中缺失值操作

s1.notnull()? #判斷Series中是否存在缺失值笛园,不是空值(也就是不為NaN)返回True,為空值(就是為NaN)返回False侍芝。

s5.isnull()? #判斷Series中是否存在空值研铆,返回的時(shí)Series對(duì)象的布爾值。不為空州叠,返回False棵红,為空值,返回True咧栗。

#該操作可以在Series中對(duì)數(shù)據(jù)進(jìn)行篩選操作逆甜,例如:

s5[s5.isnull()]? #篩選出s5中為空值的行(數(shù)值),同樣也適用在對(duì)DataFrame的操作中。

s5[s5.notnull()]? #篩選出s5中不為空值的行(數(shù)值)致板。

#Series中缺失值的填充

s5.fillna(6)? # 就是將s5中的NaN值填充為6

#Series中缺失值的刪除

s5.dropna(inplace=True)? #對(duì)于Series交煞,直接就是刪除NaN的值,返回的是刪除NaN后的Series斟或,但是原來(lái)的Series不會(huì)改變素征。

#如果指定了inplace = True 則原來(lái)的Series會(huì)改變,默認(rèn)inplace=False

#Series中對(duì)數(shù)據(jù)的去重操作

s5.unique()? #去除Series中的重復(fù)值萝挤,返回元素的唯一值御毅。

s5.nunique()? #返回s1的唯一值的個(gè)數(shù),返回的是單個(gè)值怜珍。

s5.fillna(77)

#統(tǒng)計(jì)Series中值出現(xiàn)的次數(shù)

s5.value_counts()? #統(tǒng)計(jì)Series中的值出現(xiàn)的次數(shù)亚享。

#判斷某值是否存在Series中

s5.isin([4,5,6,7])? #判斷Series是否存在[4,5,6,7]這個(gè)列表中,返回對(duì)應(yīng)的bool類型Series绘面。

#對(duì)Series中數(shù)據(jù)按照值的順序進(jìn)行排序

s5.sort_values(ascending=False,inplace=False,na_position="last")? #對(duì)于Series按照值排序不需要指定by 和axis 的值欺税。

#對(duì)Series中按照索引的順序進(jìn)行排序

s5.sort_index(level=None,ascending=True,inplace=False,na_position="last")? #對(duì)于Series參數(shù)axis是不需要的侈沪。by參數(shù)不建議使用。

# Series系列對(duì)象屬性

# Series.inddex #返回Series的index對(duì)象

# Series.shape? #返回Series的形狀元組

# Series.dtype? #返回Series的數(shù)據(jù)類型

# Series.size? #返回Series的數(shù)據(jù)大小晚凿,數(shù)據(jù)的個(gè)數(shù)

# Series.ndim? #返回?cái)?shù)據(jù)中的維數(shù)

第二部分:Pandas - DataFrame數(shù)據(jù)處理

#pd.DataFrame的創(chuàng)建: pd.DataFrame(data= , index=[] ,columns=[],dtypes="int")

#通過(guò)字典進(jìn)行創(chuàng)建

dict1 = {"a":[1,2,3],"b":[4,5,6],"c":[7,8,9],"d":[10,11,12]}

df = pd.DataFrame(data = dict1,index=[3,4,5],columns=["b","a","c","d"])? #通過(guò)dict進(jìn)行創(chuàng)建DataFrame時(shí)亭罪,不需要指定columns,如果指定的columns值與dict的Key不一致時(shí)歼秽,會(huì)填充NaN的值应役。

#通過(guò)numpy創(chuàng)建

df1=pd.DataFrame(np.random.randint(3,8),columns=["a","b","c"],index=[1,2,3])

#通過(guò)讀取csv/txt/excel文件進(jìn)行創(chuàng)建? pd.read_excel("文件路徑+文件名+擴(kuò)展名",encoding ="gbk",index_col=0,skiprows=[1],header = None )

#index_col 指定行索引的列

#header 指定列索引的行,默認(rèn)header = 0

#usecols 指定只使用那些列燥筷,默認(rèn)為None箩祥,全部使用

#skiprows 指定跳過(guò)哪些行

#dtype #設(shè)置列的類型,一般可以通過(guò)字典來(lái)進(jìn)行設(shè)置肆氓,如 dtype = {"列名":"類型"}

#sheet_name = 0 #表示讀取excel中的哪張表袍祖,可以寫表的名字,也可以寫index索引谢揪,0代表第一張表蕉陋,1代表第二張表

df3 = pd.read_csv(r"C:\Users\11764\Desktop\DataAnalyst.csv",encoding="gbk")

df3

#DataFrame屬性:

df.columns? #以index形式,返回df的列名稱拨扶,因此可以通過(guò)修改列名凳鬓,df.columns=list[] ,可以對(duì)列名進(jìn)行修改

#還可以通過(guò)rename的方法對(duì)columns進(jìn)行修改,df.rename(columns={"A":"B"},inplace = True) 將A列的名稱更改為"B"

df.index? #以index形式患民,返回df的索引

df.shape? #返回df的形狀(幾行幾列)? df.shape[0] 返回df的行數(shù)? df.shape[1] 返回df的列數(shù)

df3.size? #返回df的數(shù)據(jù)個(gè)數(shù) 幾行*幾列的值

df.values? #以數(shù)組的形式缩举,返回df的值

df.dtypes? #以Series形式返回df的中每列數(shù)據(jù)的類型

df.ndim? #以數(shù)字的形式返回df的維度

df.T? ? ? # 將df進(jìn)行轉(zhuǎn)置,將數(shù)據(jù)的行變成列匹颤,將列變成行

df.info()? #查看表中數(shù)據(jù)的類型

# DataFrame 數(shù)據(jù)選擇

#df[] 默認(rèn)是對(duì)列進(jìn)行選擇仅孩,如果需要選擇對(duì)應(yīng)行列中的值,需要先選擇列惋嚎,再選擇行杠氢。即df["columns"]["index"]? 否則會(huì)報(bào)錯(cuò)。? 輸入?yún)?shù)的位置是:先列后行

'''后續(xù)可以通過(guò)df["new_columns"]= list[]? 來(lái)新增列另伍。'''

df[1:5]? #選取1:4行的數(shù)據(jù)

df["a"]? #選擇columns=3的列鼻百,? df[] 只有一個(gè)參數(shù)是默認(rèn)是選擇列

df[["a","b"]]? #選擇的是不連續(xù)的兩列

# df["b":"c"] #選擇的是連續(xù)的列

df[1:3]? #選擇的是第2行到第3行的值,不包括第4行

df[:]? ? #表示選擇所有的行

df[:2]? #表示選擇前兩行的值

df["a"][3]? #表示選擇"a" 列中對(duì)應(yīng)的index=3 的值摆尝。? #建議在進(jìn)行設(shè)置index值時(shí)温艇,不要選擇整型作為新的index,本來(lái)默認(rèn)為整型堕汞,容易形成混淆勺爱。

# 此時(shí)的3 表示index值為3,與實(shí)際參數(shù)位置3有明顯區(qū)別讯检,也就是使用整型做index 的弊端琐鲁。

#通過(guò)loc 和iloc 進(jìn)行取值

#loc 是根據(jù)行列標(biāo)簽來(lái)進(jìn)行選擇.? 需要取多列卫旱,將多列的標(biāo)簽放在列表[]中。 輸入?yún)?shù)的位置是:先行后列

# df.loc[]? 如果只有一個(gè)參數(shù)围段,默認(rèn)是選擇行的顾翼。 需要注意:與df[] 只有一個(gè)參數(shù)默認(rèn)是選擇列的。

df.loc[3]? #選擇index=3對(duì)應(yīng)的行奈泪。

''' 后續(xù)可以通過(guò)df.loc["new_index"] = list[] ,該方式對(duì)DataFrame新增行适贸。'''

df.loc[:]? #表示選擇所有的行

df.loc[3,"a"]? #表示取index=3的行對(duì)應(yīng)"a"列對(duì)應(yīng)的值。

df.loc[:,"a"]? #表示取"a" 列的所有值涝桅。

df.loc[3,:]? # 表示取index=3 對(duì)應(yīng)行的所有值拜姿。

#iloc 是根據(jù)行列的位置來(lái)進(jìn)行取值的。? 如果只有一個(gè)參數(shù)冯遂,則默認(rèn)選擇取行蕊肥。? 輸入?yún)?shù)的位置是: 先行后列

df.iloc[2]? #選擇位置參數(shù)為2(對(duì)應(yīng)第3行)的數(shù)據(jù)。

df.iloc[[1,2]]? #表示選擇第2行和第三行的數(shù)據(jù)债蜜。

df.iloc[1,2]? #表示取第2行和第3列對(duì)應(yīng)的數(shù)值

df.iloc[[1,2],[1,2]]? #表示取第2行和第3行晴埂,對(duì)應(yīng)的第2列和第3列的數(shù)據(jù)究反。

''''

數(shù)據(jù)選擇總結(jié):

df.loc[2],df.iloc[1]? 只有一個(gè)參數(shù)表示是對(duì)行進(jìn)行選擇寻定。

默認(rèn)情況下 df[] 只能通過(guò)columns進(jìn)行列選擇,不能進(jìn)行行選擇精耐,如果含有行號(hào)和區(qū)間狼速,如df[:2] 是可以進(jìn)行行選擇。

df.columns? 表示選擇的columns這列卦停,等價(jià)于 df["columns"]

'''

#DataFrame 數(shù)據(jù)的預(yù)處理-行列操作

#df.pop(item)? #itme 指列標(biāo)簽向胡,表示指定刪除的列,并彈出刪除列的值惊完。不能作用于行

df.pop("a")? #刪除df中的對(duì)應(yīng)的"a" 列僵芹,原df數(shù)據(jù)會(huì)被改變。

#df.get(key,default=None)? key表示指定的列索引標(biāo)簽小槐,如果df中有列索引拇派,則返回該列的值,沒(méi)有的話返回default的值凿跳。

df.get("b")

#df.insert(loc,column,value,allow_duplicates=False)? 在df的指定位置插入一列件豌。? 不能作用于行。

''' loc 以int表示控嗜,表示插入列的位置茧彤,0

column 以str,number,object? 表示插入列的標(biāo)簽

value 以int,Series疆栏,array-like 表示插入列的值

allow_duplicates 以bool類型表示曾掂,如果原df中有對(duì)應(yīng)標(biāo)簽惫谤,True表示允許一樣,F(xiàn)alse表示不能一樣珠洗。'''

df.insert(2,"k",[15,13,17])

#對(duì)df中行或列數(shù)據(jù)進(jìn)行排序石挂。

# df.sort_values(by="" ,axis=0,ascending =True,inplace =False,na_position='last',ignore_index=False)

'''by=""? ? 指定行索引名(“index”)或者列索引(“cloumns”),參數(shù)需要以列表[]的形式進(jìn)行提供。

axis=0/1? 若axis=0或"index"按照指定列中數(shù)據(jù)大小進(jìn)行排序险污,若axis=1或"columns",則按照指定行索引中數(shù)據(jù)大小進(jìn)行排序痹愚,默認(rèn)axis=0

ascending=True/False? 是否按照指定列進(jìn)行升序排序,默認(rèn)為True蛔糯,即升序排列拯腮。

inplace=True/False? 是否使用排序后的數(shù)據(jù)集更替原來(lái)的數(shù)據(jù)集,默認(rèn)為False蚁飒,即不替換动壤。

na_position="frist" 或“l(fā)ast”? 設(shè)置缺失值的顯示位置。'''

df.sort_values(by=[3],axis=1)? #表示按照index=3 對(duì)列進(jìn)行排序淮逻,axis=1 表示跨行操作琼懊,也就是橫向排序

df.sort_values(by=["b"],axis=0)? #表示按照列名"a",對(duì)行進(jìn)行排序,axis=0 表示跨列操作爬早,也就是縱向排序

df["b"].sort_values()? #表示的是對(duì)“a“ 列的數(shù)據(jù)進(jìn)行值排序哼丈,返回的是"a" 列數(shù)據(jù)排序后的Series。

# 對(duì)df中的數(shù)據(jù)按照index進(jìn)行排序

#sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, by=None)

'''

axis:0按照行名排序筛严;1按照列名排序

level:默認(rèn)None醉旦,否則按照給定的level順序排列---貌似并不是,文檔

ascending:默認(rèn)True升序排列桨啃;False降序排列

inplace:默認(rèn)False车胡,否則排序之后的數(shù)據(jù)直接替換原來(lái)的數(shù)據(jù)框

kind:排序方法,{‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’照瘾。似乎不用太關(guān)心匈棘。

na_position:缺失值默認(rèn)排在最后{"first","last"}

by:按照某一列或幾列數(shù)據(jù)進(jìn)行排序,但是by參數(shù)貌似不建議使用

'''

df.sort_index(ascending=False)? # axis 按照指定的行或列進(jìn)行排序析命。

#對(duì)DataFrame中的數(shù)據(jù)設(shè)置索引值主卫,也就是指定某一列作為列索引。

#df.set_index(keys,drop=True,append=False,inplace=False,verify_integrity=False)

'''

drop:默認(rèn)為True碳却,刪除用作新索引的列

append:是否將附加到現(xiàn)有索引队秩,默認(rèn)為False? ##通俗來(lái)講,就是設(shè)置后的索引是否與原來(lái)的索引同時(shí)存在昼浦,True表示現(xiàn)索引和原索引同時(shí)并存

inplace:輸入布爾值馍资,表示當(dāng)前操作是否對(duì)原數(shù)據(jù)進(jìn)行修改,默認(rèn)為False

verify_integrity :檢查新索引副本。默認(rèn)為False

'''

df.set_index("k")

#對(duì)df中將設(shè)置的索引回復(fù)到默認(rèn)的索引值,與set_index 構(gòu)成反向操作鸟蟹。

# df.reset_index(level=None,drop=False,inplace=False,col_level=0,col_fill=" ")

'''

將原來(lái)設(shè)置為索引的列進(jìn)行還原乌妙,新的索引列默認(rèn)填充,設(shè)置索引列的列回到df數(shù)據(jù)中建钥,如果drop=True藤韵,則設(shè)置為索引列的列會(huì)被丟棄。

簡(jiǎn)單理解就是通過(guò)set_index 設(shè)置的df的index熊经,現(xiàn)在又不想用了泽艘,可以直接df.reset_index(),又回到原來(lái)的默認(rèn)值了

Level :當(dāng)指定數(shù)值類型可以為int,str镐依,tuple或list匹涮,默認(rèn)為None(無(wú))

Drop:當(dāng)指定drop=False時(shí),則索引列會(huì)被還原為普通列槐壳,否則為True時(shí)然低,經(jīng)設(shè)置后的新索引值會(huì)被丟棄,默認(rèn)為False务唐。

inplace:True/False 表示當(dāng)前操作是否對(duì)原數(shù)據(jù)生效雳攘,默認(rèn)為False

Col_level :數(shù)值類型為int或str,默認(rèn)值為0枫笛,如果列有多個(gè)級(jí)別吨灭,則確定將標(biāo)簽插入到哪個(gè)級(jí)別,默認(rèn)情況下將插入到第一級(jí)崇堰。

Col_fill:對(duì)象沃于,默認(rèn)“ ”

'''

df.reset_index()

#將已有的df中的index或columns設(shè)置成自定義的index或columns涩咖,如果新設(shè)置的index或columns在原df中存在海诲,會(huì)對(duì)原df進(jìn)行且切片,否則會(huì)對(duì)應(yīng)的值填充NaN值檩互。

#df.reindex(labels=None,index=None,columns=None,axis=None,method=None,copy=None,level=None,fill_value=nan,limit=None,tolerance=None)

df.reindex(labels="a",index=[1,2,3]) #如果指定了index=[] ,就不需要再傳入axis參數(shù)了特幔。

#修改原df的index或columns名

'''

簡(jiǎn)單理解就是原來(lái)的df的index和column已經(jīng)有了默認(rèn)名稱,現(xiàn)在我想重新修改名稱闸昨,我可以只修改幾個(gè)名稱蚯斯,或者覺(jué)得index或columns中有些名稱不想要,

想改饵较,可以通過(guò)字典形式進(jìn)行映射修改拍嵌,但是修改后的df的維度不會(huì)發(fā)生改變,不會(huì)像reindex那樣可以新增或者切片循诉。

但是rename修改名稱時(shí)横辆,index或columns需通過(guò)字典值映射。index={"原名":"新名"},columns={"原名":"新名"}

'''

df.rename(index={3:6},columns={"k":"g"})? #將df中的index索引3修改為6茄猫,將columns中"k"修改成"g"狈蚤。

? ? ? ? ? 【內(nèi)容持續(xù)更新...如果覺(jué)得對(duì)你有幫助困肩,幫忙點(diǎn)個(gè)收藏和關(guān)注,謝謝脆侮!】

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末锌畸,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子靖避,更是在濱河造成了極大的恐慌潭枣,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件幻捏,死亡現(xiàn)場(chǎng)離奇詭異卸耘,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)粘咖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門蚣抗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人瓮下,你說(shuō)我怎么就攤上這事粒督∨ň担” “怎么了路呜?”我有些...
    開封第一講書人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵胀葱,是天一觀的道長(zhǎng)抵屿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)搂抒,這世上最難降的妖魔是什么求晶? 我笑而不...
    開封第一講書人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任芳杏,我火速辦了婚禮蚜锨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘郭膛。我一直安慰自己氛悬,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開白布棍现。 她就那樣靜靜地躺著镜遣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪谎僻。 梳的紋絲不亂的頭發(fā)上寓辱,一...
    開封第一講書人閱讀 51,165評(píng)論 1 299
  • 那天秫筏,我揣著相機(jī)與錄音这敬,去河邊找鬼鹅颊。 笑死堪伍,一個(gè)胖子當(dāng)著我的面吹牛觅闽,可吹牛的內(nèi)容都是我干的蛉拙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼苞尝,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了宦芦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤调卑,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后恬涧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體注益,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡溯捆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年丑搔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片提揍。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖碳锈,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情强重,我是刑警寧澤贸人,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布倘要,位于F島的核電站,受9級(jí)特大地震影響封拧,放射性物質(zhì)發(fā)生泄漏泽西。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一缰趋、第九天 我趴在偏房一處隱蔽的房頂上張望捧杉。 院中可真熱鬧陕见,春花似錦、人聲如沸味抖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)仔涩。三九已至忍坷,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間红柱,已是汗流浹背承匣。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锤悄,地道東北人韧骗。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像零聚,于是被迫代替她去往敵國(guó)和親袍暴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353