菜鸟的学习笔记
作者:互联网
菜鸟的学习笔记
敲代码过程中遇到的许许多多的小问题。
PART1 数据处理
一、将两列拼接,即1和1变成11。( 参考了这里python合并两列)
- 首先读数据:
df = pd.read_csv("data.csv")
- 其次将要拼接的两列转化为字符串格式,很重要!
- 怎么转化呢,用
.map(str)
,举例子:df['num'] = df['num1'].map(str)+df['num2'].map(str)
二、将某列符合条件的值改为另一个值
- 先用了这个方法:
df.loc[df['Outcome'] == 'True'] = 1
,想把列的True改为1,但是这个方法使得该行所有值都变为了1; - 后来发现是少加了一个参数,应该是:
df.loc[df['Outcome'] == 'True','Outcome'] = 1
,第二个参数表示对哪一列进行操作,这样就可以只改变目标列了
三、用一个csv文件的值填补另一个csv文件中的空缺位置
- 未解决,最后利用指针和数组达成了目标,过程很繁琐
四、删除nan
- 假设x为数组,则用到
x=x[~np.isnan(x)]
; - 假设y是dataframe,则使用
df = df[~df["列名"].isnull()]
;
PART2 代码报错
- RuntimeError: index out of range at c:\a\w\1\s\windows\pytorch\aten\src\th\generic/THTensorEvenMoreMath.cpp:191
答:索引越界了,检查一下自己的数组下标,使其从1开始
标签:map,Outcome,df,菜鸟,笔记,学习,str,csv,True 来源: https://blog.csdn.net/Miss_Leoli/article/details/111152867