python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

20200724

data = data.apply(pd.to_numeric, errors=’ignore’)

应用时候忽略错误

20200719

TypeError: ‘Series’ objects are mutable, thus they cannot be hashed

result_quan.iloc[result_quan[‘相似度’]==1,’包含’]=1

loc没写

20200707

https://editor.csdn.net/md?articleId=107187574

对列表元素去重并保持原来顺序

20200624

https://blog.csdn.net/weixin_43368684/article/details/88756103

列中不包含某个字符

df[df[“col”].str.contains(‘this’|’that’)==False]

df = pd.DataFrame({“A”: [“Hello”, “this”, “World”, “apple”]})

df[df[‘A’].str.contains(“Hello|World”)==False]

A

1 this

3 apple

20200618

https://www.cnblogs.com/liulangmao/p/9301032.html

shift

pandas DataFrame.shift()函数可以把数据移动指定的位数

period参数指定移动的步幅,可以为正为负.axis指定移动的轴,1为行,0为列.

20200527

空表添加行数据

if (biaonr.shape[0]

https://blog.csdn.net/roamer314/article/details/80886075

20200518

zdlx=[ i if i in biaonr.columns else ” for i in zdlx.tolist()]

zdlx=sorted(zdlx)

zdlx=set(zdlx)

zdlx=list(zdlx)

zdlx=zdlx[1:]

列表中剔除某些元素

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

列表追加转为dataframe

20200516

[ i if ‘pb’ in i else ” for i in ycjg.columns ]

列表生成式

20200515

perr=zengq.iloc[i:i+1,:]

加个冒号直接取出来就是dataframe 不是series 不需要再转换

fg[‘col_name’]=fg[‘col_name’].apply(lambda x:x.lstrip())

fg[‘comments’]=fg[‘comments’].apply(lambda x:x.lstrip())

去除单元格左边空格

20200514

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

dataframe 累乘是向下累乘

当单元格的值是列表或者元组的时候,分组聚合运算会出问题

In [25]: gb = df.groupby(‘gender’)

In [26]: gb.

gb.agg gb.boxplot gb.cummin gb.describe gb.filter gb.get_group gb.height gb.last gb.median gb.ngroups gb.plot gb.rank gb.std gb.transform

gb.aggregate gb.count gb.cumprod gb.dtype gb.first gb.groups gb.hist gb.max gb.min gb.nth gb.prod gb.resample gb.sum gb.var

gb.apply gb.cummax gb.cumsum gb.fillna gb.gender gb.head gb.indices gb.mean gb.name gb.ohlc gb.quantile gb.size gb.tail gb.weight

分组聚合运算类型

分组累乘之后 索引会自动改成数字序列?

https://blog.csdn.net/zxyhhjs2017/article/details/93498104?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-30.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-30.nonecase

累乘

dataframe 中某列是元组 使得dataframe 不能显示出来?

gp=duiying.groupby([‘qian’,’hou’],as_index=True)

pltj=gp[‘hou’].count()

pltj=pltj.to_frame(name=’num’)

pltj.index=range(pltj.shape[0])

pltj[‘index’]=list(pltj.index)

分组统计之后 多层索引转换为列

20200423

求各行的和各列的和

https://my.oschina.net/u/2306127/blog/1920367

DataFrame数据预览

计算各列数据总和并作为新列添加到末尾

df[‘Col_sum’] = df.apply(lambda x: x.sum(), axis=1)

计算各行数据总和并作为新行添加到末尾

df.loc[‘Row_sum’] = df.apply(lambda x: x.sum())

最终数据结果:

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

data_=data_[data_.columns[0:-1]]

通过列名取出来一列还是dataframe 不用再从series转换

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

https://www.cnblogs.com/zhoudayang/p/5564219.html

https://blog.csdn.net/cow66/article/details/100119058

重点

同时对多列进行操作

ycjg[str(j)+’pb’] = ycjg.apply(lambda x:x[str(j)] ==x[‘mubc’],axis=1)

apply括号里面的x 代表前面传入的是 ycjg dataframe

要每个元素单独比较 axis=1 每列的每个元素对应比较

axis=0 每行的元素对应比较

多列比较 两列比较 两列操作

df[‘duplication’]=df.apply(lambda x: 1 if ((x[0]==x[1])) else 0 ,axis=0 )

只能是X[0] 这种形式,不能用x[‘mubc’]的形式

df[df[‘target’]==’脉搏’]

直接df通过true false 来筛选的时候,筛选的是整行

20200414

字符转换为数值

https://www.cnblogs.com/sench/p/10134094.html

from sklearn import preprocessing

le = preprocessing.LabelEncoder() #获取一个LabelEncoder

le = le.fit([“male”, “female”]) #训练LabelEncoder, 把male编码为0,female编码为1

sex = le.transform(sex) #使用训练好的LabelEncoder对原数据进行编码

print(sex)

20200413

行追加用append,concat

列插入 用 insert

X.iloc[:, i_outlier] = X.iloc[:, i_outlier].astype(float)

类型转换花的时间很多!

20200410

https://blog.csdn.net/uvyoaa/article/details/79157786

分组取前n行

https://pandas.pydata.org/pandas-docs/stable/user_guide/groupby.html

groupby api

grouped = df.groupby([‘class’]).head(2)

goupby之后就是对每类分别操作?

https://blog.csdn.net/The_Time_Runner/article/details/84076716

set_index:删除原来索引,并用新的数字列覆盖索引

reset_index:drop false 将原来的索引加入当前df作为列 同时用数字改写行索引

drop true 不作为列 同时用数字改写行索引

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

reset_index()

test_data.groupby(‘release_year’)[‘genre’].value_counts()

分组对某列计数

注意筛选条件最终的表现形式是True或False

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

看起来是相同的但是实际上有个有空格,导致分组统计的时候

会出现两个值

gb=df.groupby([‘target’],as_index=True)

gb_count=gb.size() 是series

对分组列本身值统计计数 如图在上

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

不是size 而count的结果会把所有列索引保留

https://blog.csdn.net/meiqi0538/article/details/82533456

series 追加,添加值

列名的更改

df.rename(columns={‘原列名’:’新列名’}, inplace=True)

append,concat 出问题 基本上就是两张表的行或者列索引

不一致导致的

20200408

ValueError: column index (256) not an int in range(256)

https://www.cnblogs.com/z-x-y/p/9639702.html

sigle_col=group.loc[i_gp, :]

sigle_col=(sigle_col.to_frame()).T

series 转dataframe

20200407

(df_test.loc[df_test.loc[:,’列1′]==’你好’,’列1′])=’大哥’

筛选 赋值 注意大圆括号 不能少

series或者dataframe 才能赋值 如果加iloc[0] 反而不能赋值

20200326

分组排序

df=df.groupby(‘LABEL1’).apply(lambda x:x.sort_values(‘行数’)).reset_index(drop=True)

test2=df_test.sort_values([‘列2′,’列3’],ascending=[True,True])

两种效果是一样的

20200325

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

statis.to_excel(path + ‘统计结果_’ + str(i_sam) + ‘.xls’)

前面的to_excel 如果和后面的xls 不对应的话

输出就会像上面的错误

dataframe 模糊的 是df 进行比较 没取到具体的值

20200322

def dot_index(x):

dot_index=re.search(r’.’,str(x)).span()[0]

return dot_index

df[‘len’] = df.iloc[:, i].apply(lambda x: 1 if ((x!=0)&(int(str(x)[(dot_index(x)+1):]) ==0) & (len(str(int(x)))==1)) else 2)

某个字符所在的索引,判断是否是个位数

for i_outlier in tqdm(range(df_.shape[1])):

print(i_outlier)

min_ = np.percentile(df_.iloc[:, i_outlier], 0.5, interpolation=’lower’)

max_ = np.percentile(df_.iloc[:, i_outlier], 99.5, interpolation=’higher’)

filter=df_.iloc[:, i_outlier][(df_.iloc[:, i_outlier] > max_) | (df_.iloc[:, i_outlier] < min_)]

df_.iloc[:, i_outlier][(df_.iloc[:, i_outlier] > max_) | (df_.iloc[:, i_outlier] < min_)] = 0

dataframe 大部分都是索引问题

如果for 的指和索引相同 且索引存在重复时候,第四行将会改变所有相同的索引

20200321

min_ = np.percentile(df_.iloc[:, i_outlier], 0.5, interpolation=’lower’)

max_ = np.percentile(df_.iloc[:, i_outlier], 99.5, interpolation=’higher’)

filter=df_.iloc[:, i_outlier][(df_.iloc[:, i_outlier] > max_) | (df_.iloc[:, i_outlier] < min_)]

有可能取出来是空值,最小和最大的值的个数都很多

这样就筛选不出来

20200320

df_sample.loc[0seg:1(seg-1),str(i_1000)]=fuzhi #划分出的数据加到sample表,复制用dataframe不行,series 才可, 左右两边形式相同

series=series

dataframe=dataframe

20200319

df.loc[True]

df[True] 二者皆可以

20200319

df = df.loc[~df.iloc[:, 0].str.contains(‘心率’), :]

series 判断是否包含某些字符

20200318

df=df[~df[col_name[0]].isin([‘0’, ‘0.0’, ”])]

判断某列是否含有某值

20200317

X_train = df_train.iloc[:,0:-1]

索引-1 为最后一列

20200313

空值

isna() 不能识别”

替换成”,筛选的时候用 aa==”

excel里面的空白,读到dataframe 里面是不存在的

无法显示出来的,比如本来一列有10行,有两个空白

读入之后就只剩下8个数据,两个空白无法显示出来

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

(sigcol0.iloc[0] + sigcolna.iloc[0]) + sigcol00.iloc[0] > df.shape[0] * 0.5

sigcol0 是series 不能 sigcol0>15 不能直接判断

必须把值取出来再判断

apply 只适合于apply

20200311

https://blog.csdn.net/qq_22238533/article/details/70917102

随机打乱

concat 合并 行或者

列索引不相同就会产生错误

df.notna() 非空值

dataframe 整体选择

df=df[df!=0] 零的部分变成nan,因为其要保存整体索引的不变

df=df[df.isna()] 这样好像是不起作用的

即使是按列来操作也是不行的,因为其要按最多值的列的索引

来concat 最终还是达不到只删除空值,非空值自动靠拢的目的

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

为什么非空值选不出来

20200310

指定位置插入列

df_minmax.insert(loc=0,column=’784′,value=”)

df_sample=pd.DataFrame({‘0’:[0]seg},index=[0]seg)

创建

正则要删除 “…” 主要”.”是通配符,需要转义

re.sub(r’…’, ‘.’, x) 替换的部分就不用转义了 in_file=in_file.loc[in_file.iloc[:,0]!= ‘.’] #去掉纯粹的点号

后面的等号是指整个字符为一个点号

pandas series 方法

df2 = df[df[columnname].str.contains(area)] 就是选择包含area变量中的字符串的行。

20200309

quantity=former_data.loc[former_data[‘target’]==target_,’quantity’]

dataframe 筛选

只有loc 才有上面那种用法 相当于前面指定行,后面指定列

df整体只能是整行整行的筛选

csv 没有行数限制

xlsx 最高一百多万行

20200306

写条件判断的时候,多条件组合的所有情况

还有最边上的情况要考虑完全

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

xlsx输出变成了这样,csv 输出则为正常

df.sample.columns = [[df[‘target’].iloc[i]]]

columns 等于的值 对象是列表的列表

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

numpy,ndarray,dataframe 行列的对应

20200305

删除 test_dict_df.drop([‘id’],axis=1)

dataframe 的坑

data_df=data_df.dropna(thresh=0.5*data_df.shape[0],axis=0)

这里的阈值一定要设置 不然 一旦有一个值为空 整个都会被删掉

20200304

df.iloc[:, i_outlier][(df.iloc[:,i_outlier]>max_) or (df.iloc[:,i_outlier]or 的前后必须加括号 不然 就会默认 max _和or运算

对每一行和每一列进行循环处理好像只能for循环

而对每一行或者每一列里面的每个值进行处理 则可以增加一行

或者一列来处理 不用for循环

20200303

iloc 不能用于扩展,会报溢出错误

而loc可以直接添加行或者列

dataframe 的index 本身是个array 对象

https://blog.csdn.net/qwertyuiop5rghar/article/details/84454670

https://blog.csdn.net/qwertyuiop5rghar/article/details/84454670

增加行 只能用 loc? 不能用iloc

扩充数据的时候 用增加行比增加列容易

http://www.voidcn.com/article/p-fnoxvztw-bxs.html

用字典随机填充数据

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

填充的时候前后的形状要对齐

缺失值填充

https://blog.csdn.net/donghf1989/article/details/51167083/

20200302

def sort_handling(self, df):

df_=df.astype(float)

for i_col in df_.columns:

temp_sort=df_.loc[:, i_col].sort_values()

temp_sort.index=range(temp_sort.shape[0])

df_.loc[:, i_col] = temp_sort #排序后索引没对齐 需要重新更改索引

每列单独排序

df_.loc[:, i_col] = df_.loc[:, i_col].sort_values() #排序后索引没对齐 需要重新更改索引

索引对不齐 执行不成功 需要更改索引

20200302

找出nan以及inf

https://blog.csdn.net/alanguoo/article/details/77198503

20200228

numpy数据类型dtype转换

https://www.jianshu.com/p/a1da90edf87f

dataframe 所有值筛选

df=df[df!=0]

20200226

在类里面 调用其中的某个函数时候用self.aa()

不能是在类内部,应该是在 某个函数内部才能调用self

字符到数值的映射

https://blog.csdn.net/liulunyang/article/details/88089962

dataframe 增加列 insert

https://blog.csdn.net/W_weiying/article/details/85247436

dataframe array 相互转换

python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

20200225

df[‘舒张压.17’]=df[‘舒张压.17’].apply(lambda x: ” if 1-bool(x.isdecimal()) else x)

1-bool(a) True 和 False的转换

if 的前面空值,直接写”,不用写x=” 隐含已经有x=了

https://blog.csdn.net/laoyuanpython/article/details/94214189

判断是否为数值

df_sort[‘身高’][df_sort[‘身高’]

Original: https://blog.csdn.net/weixin_28846405/article/details/113507195
Author: 桃花小鹿
Title: python列表反序后为什么结果是nonf_dataframe,python,numpy 问题索引1

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/756517/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球