本文目录一览:
- 1、用python编写程序。问题如下:有两列数据,一列是时间,形式为2011/5/31 19:00,另一列是一个具体的数值
- 2、python中有将两列数据合并为一列数据的函数么
- 3、python pandas 高效的分析两列数据,并生成结果到三列。
- 4、python如何对数据的列进行规则式合并?
- 5、python处理图片数据?
- 6、python 如何根据两列数据确定第三列数据,如果我输入12 D001,怎么输出第二列这唯一的值
用python编写程序。问题如下:有两列数据,一列是时间,形式为2011/5/31 19:00,另一列是一个具体的数值
数据先导入,通常用csv。
然后是时间格式转换用time.strptime
转换完的时间可以直接取到hour,miniute,等属性,你直接按hour做当天平均值,再做月份的平均值。(其实可以一直计算,不用分开算)
最简单的办法是1个月的数据,全放在一起,按时间排序,然后按小时平均就可以了。
如果不想麻烦就这样
sum([v for t,v in data if t.hour==2]) /len([v for t,v in data if t.hour==2])
这句话就是计算2点的数据平均值
python中有将两列数据合并为一列数据的函数么
有, 要用apply函数。一种方式:
def my_test(a, b):
return a + b
df['value'] = df.apply(lambda row: my_test(row['A'], row['B']), axis=1)
apply完了产生一列新的series。注意axis=1 不能漏了 ,表示apply的方向是纵向
python pandas 高效的分析两列数据,并生成结果到三列。
首先,为了以后在处理大量数据的效率,一定要养成【不】使用循环的方式处理pandas或者numpy数据的习惯, 最好使用包内置的方法或者被重载过的通用方法来实现。以前刚接触pandas的时候,处理10W+的是数据的时候,用循环处理,等了半天都没有结果。
对于你的代码,发现虽然有if了, 但却没有else哈,也就是说你只考虑到匹配的情况下的逻辑, 但对于没匹配的处理却没有写出来。
python如何对数据的列进行规则式合并?
首先导入列表中的数组,再对每一列进行检测若发现相同的数字就用0来填充,在按列求和,生成一个新的数组再合并到原来数组的下面,生成一个新的列表:
import
pandas
as
pd
a=pd.readflie(
"XXX.csv")
//XXX.csv为你的列表生成的数组文件的路径
for
i
in
a[i]:
//循环找出重复的数据并以0替换
for
j
in
a[i,j]:
if
a[i,j]==a[i,j+1]
a[i,j+1]=0
for
k
in
a[k,n]:
for
n
in
a[k,n]:
a[k,n]+=a[k,n]
a[k,n+1]=a[k,n]/n
//求平均值
这段代码复制到pycharn就可以直接运行了,打字不易,求理解
python处理图片数据?
生成一张纯色的图片
先设置图片的颜色,接着利用Image模块的new方法新生成一张图片,png格式的图片需要设置成rgba,类似的还有rgb,L(灰度图等),尺寸设定为640,480,这个可以根据自己的情况设定,颜色同样如此。
批量生成图片
上面生成了一张图片,那要生成十张图片呢,这种步骤一样,只是颜色改变的,利用循环就可以解决。首先创建一个颜色列表,把要生成的图片颜色放进去。接着循环获取不同的颜色,保存的时候利用字符串拼接的方法改变图片的名字。
本地生成的图片
封装成函数
前面的方法已经可以批量生成图片了,为了通用性强一点,我们可以封装成函数,把哪些可以改变的参数单独抽离出来。尺寸也同样,使用的时候,可以根据自己的需要定义颜色列表和尺寸。当然还有加一些提示用语和报错兼容性,这里就不讲了。
本地生成的图片
python 如何根据两列数据确定第三列数据,如果我输入12 D001,怎么输出第二列这唯一的值
test.txt
1 130 12 D001
2 130 12 D002
3 130 12 D003
4 130 12
5 130 12 D004
6 130 12 D005
# coding: utf-8
f = open('test.txt') #打开文件
tmp_dict = {} #临时字典
for i in f.readlines():#逐行读取分割 空的补'' 字符
j = i.strip().split()
if len(j)==3:
j.append('')
tmp_dict.setdefault((j[2],j[3]),j[1]) #生成元祖 键字典
print tmp_dict
print '''tmp_dict[('12','D001')]==''',tmp_dict[('12','D001')]