Python数据分析几个比较常用的方法
1,表头或是excel的索引如果是中文的话,输出会出错
解决方法:python的版本问题!换成python3就自动解决了!当然也有其他的方法,这里就不再深究
2,如果有很多列,如何输出指定的列?
需求情况:有的时候,数据很多,但是只要仅仅对部分列的数据进行分析的话,要怎么做?
解决方法:
df = pandas.read_excel('1.xls',sheetname= '店铺分析日报')
df = df.loc[:,['关键词','带来的访客数','跳失率']] #访问指定的列
一行读取数据,第二行访问指定列
3,如何为数据框添加新的列?
需求情况:有一个表格,里面的列是单价,数量,想再输出一个总价的列,或是对一些数据进行总结
解决方法:直接上代码
from pandas import read_csv;
import pandas;
df = read_csv("1.csv", sep="|");
#把计算结果添加为一个新的列
df['result'] = df.price*df.num #新的列名,后面是对应的数值
print (df)
4,如何对百分号的数值进行计算,再将其输出
需求情况:比较蛋疼的一个情况,电商很多数据都是百分比的,带有百分号,不能进行直接的计算,需要对其进行转换,然后再输出
解决方法:
from pandas import read_csv;
import pandas;
df = read_csv("1.csv", sep="|");
f = df['跳失率'].str.strip("%").astype(float)/100;
f.round(decimals=2) #保留小数点后面2位
f_str = f.apply(lambda x: format(x, '.2%')); #再转换成百分号并且保留2位数(精度可以调整)
df['跳失率'] = f_str #重新赋值
5,如何获取导入的数据有几行和几列(数值)
需求情况:有的时候需要写一个通用脚本,比如随机抽样分析,程序自动获取行和列的话,写出来的脚本通用性明显会很强
解决方法:
df.columns.size #获取列数
df.iloc[:, 0].size #获取行数
6,如何对数据进行排序
需求情况:这个就不用说了,到处都要用到
解决方法:
df['跳失率'].size #对数据进行排序
newDF = df.sort(['曝光量', '带来的访客数'], ascending=[True, False]); #多重排序
7,如何删除指定的列?
需求情况:同样,十几列的数据,如果你想获取指定的输出数据,可以用方法2,但是如果想要获取的数据列比较多,只有1-2行不想要,这样就可以用指定删除列的方法了
解决方法:
df.columns.delete(1)
一行代码搞定!
总结:整体来说的,python的语法在做数据分析还是相当简单的,很多的需求基本上就是一行代码搞定!
8,如何添加整行数据?
df.append([1,2,34,,5])