Q
b[0:2,:3]=100 #这个应该是将第0行和第1行&第3列都改成100吗,出来的结果第三列并没有变化」
A
这个可以叫切片,指定索引修改数组中的数值。3:是从3开始往后,:3是从0开始到3,3不取。另外,.r直接切片,拼接可以用.stack
Q
第一个问题,打开文件不用open()
A
读取文件的方式有很多种,open是一种,这里是一种
Q
第二问题,np.loadtxt方法是啥意思
A
就是读取txt文件中的信息
Q
第三个问题,n_samples,n_features = x.shape这个shape 啥意思
A
shape相当于一个方法,这涉及到基础语法。代码中给了shape的注释。
Q
第三个问题,n_samples,n_features = x.shape这个shape 啥意思
A
shape相当于一个方法,这涉及到基础语法。代码中给了shape的注释,shape就是数组的形状,几行几列。
Q
if sample[2] ==1:
num_bread_purchases+=1
这个if 中,上一个不是说sample是在x中for循环,那就是元素,怎么还有sample[]
A
sample[i]表示第几个特征,共五个特征。
Q
A
就是给u和indice两个变量同时赋值,避免写两次。unique返回值由两个值组成,用两个变量承接。
Q
display和print 区别?网上没有搜到。下面这个,输出不了
import pandas as pd
from pandas import Series,DataFrame
import numpy as np
#合并
df1=pd.DataFrame(np.arange(6).reshape(3,2),columns=['four','five'])
df2= pd.DataFrame(np.arange(6).reshape(2,3),columns=['one','two','three'])
display(df1,df2)
NameError: name 'display' is not defined
A
在jupyter notebook才能,显示出来是一个表格。print(display(df1,df2))试一下,如果显示缺什么库下载就好。
Q
在字典里的时候明明是省份在前,为啥输出的时候就是pop在前面。
A
我们输出是对的的,应该是你环境的问题,或者之间输出导致的缓存,清理一下。
Q
import xlrd
data = xlrd.open_workbook(r'C:/Users/WT/Deskto/1.xlsx')
table=xlsx.sheet_by_index(0)
#索引index(n)中的参数代表第n个表
print(table.cell_value(0,0))
print(table.cell_value(0,1))
print(table.cell_value(1,3))
print("----------------------")
print(table.cell(1,3).value)
print(table.row(1)[3].value)
print("======================")
print(table.cols(1)[3].value)
A
桌面拼写错误,第二次没加后缀
Q
为什么会变成#号了
A
改一下单元格格式,单元格宽度,拉一下
Q
我思路局限了,我做的字典,然后for循环查询出来写进去的,应该没有比这更蠢的办法了
A
pandas 没有可以对比列的方法么?然后读取进来 就是一个 DataFrame,然后取 sn 与另一个 相比较 pandas 也可以排除重复值。取日期那一列 取最近的,那个读取多个txt 文件的 就是一个案例。
Q
想问下这个的话,是怎么个改法:writer = pd.ExcelWriter('C:\\Users\\JackFeng\\Desktop/1/{table_name}_666.xlsx'.format(table_name=table_name))
我直接改成了自己xls文件的路径 writer = pd.ExcelWriter('/Users/kath/Desktop/py-excel/1.xls')
我是将dataframe写入excel,但是没写入任何东西
A
你没有读取哪来写,dataframe 有to excel的方法
Q
小姐姐有空的话可以分享一下你的解题思路呀,有重复的怎么处理呀
A
我的思路就是:先读取表格到dataframe,再用merge函数并表,然后把新表写入excel。
Q
看了那个代码,发现是改名SN为盒子SN然后合并,而困扰我的主要矛盾:排除重复项挑出日期最近的、进一步优化标注处理多余项等,解决方案好像不在里面唉,比如说我把4~6行数据改重复,怎么挑出5除去4和6
A
groupby 然后再取日期得。拿sql 更加简单了,造个数据试试就知道了,https://www.jianshu.com/p/ae94c28f2ad8 参考一下这个,均值换成 日期。
A
那么 还有一个问题思考一下:日期不是最大就一定就是对的,比如 6.1和 5.31是否需要转换成时间戳再做比较,怎么能确保就是最近的那个
A
groupby就可以做到去重&筛出日期最大的那个了,标黄是我加的重复项。
groupby之后只留下了一条
Q
groupby之后只留下了一条?我好像不行,你改成4/22试下可以吗
Q
出来的改成4/22的话,跑出来就是第二条4/25咯,发现出现问题是排序后同一行数据有变化了,因为你同一行的其它数据都一样
A
我觉得这个多行不一样的,groupby不能解决(类似像excel的数据透视表也不能酱紫玩的),所以要么是先单独将日期列groupby,再写回原表,再做merge?如果是这样,那不如先排序再去重简单点
A
它是按每列排序然后去重,并没有考虑行
Q
有大神懂python自动化测试unittest用例封装吗?我想请教个问题
A
试试测试套件,一般多个用例不是都放在套件里执行的吗。或者在第一个用例加一个关闭连接的操作。期望值和预期值不相等
小白踩坑记第一章:Python第一期
喜欢就点个在看吧~