本文目錄一覽:
- 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′)]
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/282667.html