python编程问题---第一次
?
單引號(hào)的輸入
?
?
?
?
?
字典的key值輸入不用加引號(hào)
?
?
?
?
列數(shù)不能超過256
?
?
?
In 不能直接用于series 只能用于 list ?可以用 isin
?
print(spuFt['序號(hào)屬性'].isin([61283]))
?
?
?
?
多條件篩選 ?每個(gè)條件需要加括號(hào)
?
?
?
?
子模塊被主模塊引用的 ?如果子模塊有變動(dòng) ?需要重新運(yùn)行導(dǎo)入一遍 才能運(yùn)行更改過的子模塊
?
?
?
Python中的break和continue的使用方法
一、continue的使用方法(結(jié)束當(dāng)前的循序,進(jìn)行下一個(gè)數(shù)的循環(huán))
# *****************************************************************************
# This is a program to illustrate the useage of continue in Python.
# If you want to stop executing the current iteration of the loop and skip ahead to the next
# continue statement is what you need.
# ****************************************************************************
for i in range (1,6):
????print 'i=',i,
????print 'Hello,how',
????if i==3:
????????continue
????print 'are you today?'
執(zhí)行結(jié)果例如以下:
>>> ================================ RESTART ======================
>>>?
i= 1 Hello,how are you today?
i= 2 Hello,how are you today?
i= 3 Hello,how
i= 4 Hello,how are you today?
i= 5 Hello,how are you today?
>>>?
?
二、break的使用方法(結(jié)束總的循環(huán))
# *****************************************************************************
# This is a program to illustrate the useage of break in Python.
# What if we want to jump out of the loop completely—never finish counting, or give up
# waiting for the end condition? break statement does that.
# ****************************************************************************
for i in range (1,6):
????print 'i=',i,
????print 'Hello,what is ',
????if i==3:
????????break
????print 'the weather today?'
執(zhí)行結(jié)果例如以下:
>>> ================================ RESTART ========================
>>>?
i= 1 Hello,what is? the weather today?
i= 2 Hello,what is? the weather today?
i= 3 Hello,what is?
>>>
Jupyter ?工作目錄更改
https://blog.csdn.net/lixintong1992/article/details/53012921
?
ipython notebook 改名叫jupyter了。
在cmd中,輸入“ipython notebook”或“jupyter notebook”打開notebook,此時(shí)cmd的當(dāng)前路徑即為notebook的工作路徑。
另外,可通過設(shè)置config文件的方法來設(shè)置固定的工作路徑。
方法是:
1 選擇一個(gè)用于存放config文件的文件夾
2 在cmd中進(jìn)入該文件夾的路徑
3在cmd中 輸入命令jupyter notebook --generate-config
4 此時(shí)在該文件夾中便生成一個(gè)notebook的config文件,文件名是“jupyter_notebook_config.py”
5 打開該文件,修改
“# The directory to use for notebooks and kernels.”下面的
“# c.NotebookApp.notebook_dir = ””為
“c.NotebookApp.notebook_dir = ‘指定的工作路徑’”(注意將#號(hào)刪除)
?
配置文件位置?
C:\Users\用戶名.jupyter\jupyter_notebook_config.py
?
?
出現(xiàn)Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build*解決辦法
2018年01月16日 17:00:30?閱讀數(shù):16493?標(biāo)簽:?linuxubuntu?更多
個(gè)人分類:?linux
版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 https://blog.csdn.net/u011324454/article/details/79076885
我在使用sudo pip install jupyter的時(shí)候出現(xiàn)了Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-sr2_jA/distribute/這個(gè)錯(cuò)誤,百度了好久也試了前人的很多方法,最后在stack overflow上看到了一句代碼見奇效
(就是沒有安裝好)
?
easy_install -U setuptools
·?1
然后在執(zhí)行sudo pip install jupyter竟然沒有報(bào)錯(cuò)安裝成功了?
pip還不能完全取代easy_install,哈哈哈
https://blog.csdn.net/infovisthinker/article/details/54705826
Tensorflow-gpu 安裝
?
今天因?yàn)榘惭b自然語言分詞gensim 3.0.0模塊,需要升級(jí)numpy到1.11.3以上版本,沒有問題啊,升級(jí)唄,結(jié)果升級(jí)安裝提示:
PermissionError: [WinError 5] 拒絕訪問。: 'd:\\anaconda3\\lib\\site-packages\\nu
mpy\\core\\multiarray.cp35-win_amd64.pyd'
嗶了狗啊,以前都沒有問題,咋回事呢,在試試安裝whl版本的numpy,下載了117M的numpy-1.13.3+mkl-cp35-cp35m-win_amd64.whl,使用命令:
pip?install?numpy-1.13.3+mkl-cp35-cp35m-win_amd64.whl
哎呦我去,依然是這個(gè)錯(cuò)誤:
咋整?問度娘,度娘說,你的參數(shù)需要加上--user,于是再次安裝:
pip?install?--user?numpy-1.13.3+mkl-cp35-cp35m-win_amd64.whl
結(jié)果萬事大吉!
?模塊和主解釋器的關(guān)系
?
?
?
先建立環(huán)境?然后在環(huán)境里面再安裝這個(gè)模塊
print((rdm.rand()/10.0-0.05)) ?# 構(gòu)造-0.05 到0.05 范圍的值
?
構(gòu)造一個(gè) 通過batch 取完數(shù)據(jù)集里面的所有值 ?一次取一個(gè)batch
128/8=16
16次 完成128個(gè)數(shù)據(jù) ?一個(gè)batch 的遍歷
5000/128=312
完成312 次 128個(gè)數(shù)據(jù)的迭代
移動(dòng)平均,差分等 看
G:\BaiduNetdiskDownload\46-時(shí)間序列預(yù)測(cè)\時(shí)間序列\(zhòng)46.3差分自回歸移動(dòng)平均模型(ARIMA) 筆記
問題:把列值作為index
Parse_dates=[0]
?
?
?
?
Inverse_transform 把歸一化的值轉(zhuǎn)回來
?
?
?
?
臥槽 直接匹配出2014年的
?
?
?
查看空缺值有幾個(gè)空格
Print 是經(jīng)過格式化了
要直接在控制臺(tái)輸出 才知道具體是什么
?
按tab鍵補(bǔ)全
?
G:\BaiduNetdiskDownload\煉數(shù)成金《深度學(xué)習(xí)框架Tensorflow學(xué)習(xí)與應(yīng)用》\第二周\第二周 ?2-2 ?變量的使用
?
連續(xù)按兩次 shift +tab 鍵 可以看到詳細(xì)的方法描述 ?屬性
1324 ??446
print((rdm.rand()/10.0-0.05)) ?# 構(gòu)造-0.05 到0.05 范圍的值 ??構(gòu)造某個(gè)范圍內(nèi)的數(shù)
?
????start = (i*batch_size) % 128
????????end = (i*batch_size) % 128 + batch_size
Y = [[x1+x2+(rdm.rand()/10.0-0.05)] for (x1, x2) in X] # 同時(shí)循環(huán)出多個(gè)數(shù)
?
Reduce_mean
with tf.Session() as sess:#最后一句不需要sess.run()
????v=tf.constant([[1,3,1],[4,2,2]])
????sess.run(v)
????print(tf.reduce_mean(v).eval())
舉例說明:
00001.?
# 'x' is [[1., 2.]
00002.?
00003.?
# ????????[3., 4.]]
00004.?
x是一個(gè)2維數(shù)組,分別調(diào)用reduce_*函數(shù)如下:
首先求平均值:
00001.?
tf.reduce_mean(x) ==> 2.5?#如果不指定第二個(gè)參數(shù),那么就在所有的元素中取平均值
00002.?
00003.?
tf.reduce_mean(x, 0) ==> [2., ?3.] #指定第二個(gè)參數(shù)為0,則第一維的元素取平均值,即每一列求平均值
00004.?
00005.?
tf.reduce_mean(x, 1) ==> [1.5, ?3.5] #
00006.?
指定第二個(gè)參數(shù)為1,則第二維的元素取平均值,即每一行求平均值
?
Reshape ?[-1,1] 的問題 一般都是數(shù)值內(nèi)嵌方括號(hào)的問題
https://blog.csdn.net/NockinOnHeavensDoor/article/details/80660158??
?
?
https://blog.csdn.net/wlwl2015/article/details/81902540
Reshape(-1,1)
-1 表示不知道有多少行 ?可以指定列數(shù)
00001.?
z = np.array([[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
[13, 14, 15, 16]])
z.shape
?
z.reshape(-1, 2)
array([[ 1, 2],
[ 3, 4],[ 5, 6],[ 7, 8],[ 9, 10],[11, 12],[13, 14],[15, 16]])
In [14]: x=np.array([[1,2],[3,4]])
# flattenh函數(shù)和ravel函數(shù)在降維時(shí)默認(rèn)是行序優(yōu)先
In [15]: x.flatten()
Out[15]: array([1, 2, 3, 4])
?
In [17]: x.ravel()
Out[17]: array([1, 2, 3, 4])
# 傳入'F'參數(shù)表示列序優(yōu)先
In [18]: x.flatten('F')
Out[18]: array([1, 3, 2, 4])
?
In [19]: x.ravel('F')
Out[19]: array([1, 3, 2, 4])
#reshape函數(shù)當(dāng)參數(shù)只有一個(gè)-1時(shí)表示將數(shù)組降為一維
In [21]: x.reshape(-1)
Out[21]: array([1, 2, 3, 4])#x.T表示x的轉(zhuǎn)置
In [22]: x.T.reshape(-1)
Out[22]: array([1, 3, 2, 4])
·?22
兩者區(qū)別
>>> x = np.array([[1, 2], [3, 4]])>>> x.flatten()[1] = 100>>> x
array([[1, 2],
???????[3, 4]]) ???????????>>> x.ravel()[1] = 100>>> x
array([[ ?1, 100],
???????[ ?3, ??4]])
?
00001.?0.3 秒暫停一下 ?
?
?
注意事項(xiàng):
PyCharm一個(gè)窗口只能運(yùn)行一個(gè)工程,如需創(chuàng)建多個(gè)關(guān)聯(lián)不大的程序有以下方式:
1.?在創(chuàng)建工程的時(shí)候以新窗口打開(否則當(dāng)前窗口會(huì)被關(guān)閉)
2.在當(dāng)前工程上直接新建其他程序(可以使用文件夾分隔)
3.當(dāng)需要同時(shí)運(yùn)行多個(gè)耗時(shí)程序時(shí),IDE會(huì)有卡頓
?
If 的條件語句 ?必須連續(xù) 不能有超空格
?
?
?
右邊的變量管理器不是實(shí)時(shí)更新的
https://blog.csdn.net/lanchunhui/article/details/49493633
·?
range()返回的是range object,而np.nrange()返回的是numpy.ndarray()?
range盡可用于迭代,而np.nrange作用遠(yuǎn)不止于此,它是一個(gè)序列,可被當(dāng)做向量使用。
range()不支持步長(zhǎng)為小數(shù),np.arange()支持步長(zhǎng)為小數(shù)
兩者都可用于迭代
兩者都有三個(gè)參數(shù),以第一個(gè)參數(shù)為起點(diǎn),第三個(gè)參數(shù)為步長(zhǎng),截止到第二個(gè)參數(shù)之前的不包括第二個(gè)參數(shù)的數(shù)據(jù)序列?
某種意義上,和STL中由迭代器組成的區(qū)間是一樣的,即左閉右開的區(qū)間。[first, last)或者不加嚴(yán)謹(jǐn)?shù)貙懽鱗first:step:last)
?
np.newaxis的功能是插入新維度,看下面的例子:
a=np.array([1,2,3,4,5])
print a.shape
print a
輸出結(jié)果
(5,)
[1 2 3 4 5]
可以看出a是一個(gè)一維數(shù)組,
x_data=np.linspace(-1,1,300)[:,np.newaxis]
a=np.array([1,2,3,4,5])
b=a[np.newaxis,:]
print a.shape,b.shape
print a
print b
輸出結(jié)果:
(5,) (1, 5)
[1 2 3 4 5]
[[1 2 3 4 5]]
?
x_data=np.linspace(-1,1,300)[:,np.newaxis]
a=np.array([1,2,3,4,5])
b=a[:,np.newaxis]
print a.shape,b.shape
print a
print b
輸出結(jié)果
(5,) (5, 1)
[1 2 3 4 5]
[[1]
?[2]
?[3]
?[4]
?[5]]
?
可以看出np.newaxis分別是在行或列上增加維度,原來是(6,)的數(shù)組,在行上增加維度變成(1,6)的二維數(shù)組,在列上增加維度變?yōu)?6,1)的二維數(shù)組
?
三維的表現(xiàn)形式
問題?
如果 算法里面 如果出現(xiàn) need real figure ?not ?str ?有可能是給算法設(shè)置的參數(shù)有問題
?
數(shù)組元素之間沒有符號(hào) ,每一行之間是 \n
List 元素之間是逗號(hào),一行與一行之間是逗號(hào)
?
跳出多循環(huán)
https://blog.csdn.net/zSean/article/details/75057806
Tensorflow中tf.get_variable和tf.variable_scope的使用
?
https://www.jianshu.com/p/a1a9e44708f6????操作
import tensorflow as tf
data = [[[1, 1, 1], [2, 2, 2]],
[[3, 3, 3], [4, 4, 4]],
[[5, 5, 5], [6, 6, 6]]]
# print(type(data))
x = tf.strided_slice(data,[0,0,0],[1,2,1])
with tf.Session() as sess:
???????print(sess.run(x))
?
看數(shù)組的維度
最外面有幾層中括號(hào)?就有幾維
第一維度是識(shí)別 減少一個(gè)方括號(hào)之后 ??直到第二個(gè)多層中括號(hào)遇到的逗號(hào)之前 ?從左往右看f
倒數(shù)第二維的識(shí)別 ?看能否直接去掉最外一層括號(hào) (要確保最外面一層要比里面任何一層的單邊方括號(hào)數(shù)量都要多)
最后一個(gè)維度的識(shí)別,最里層中括號(hào)所包含的元素個(gè)數(shù)
問題? UnicodeDecodeError: 'utf-8' codec can't decode bytes in position ??第一個(gè)實(shí)現(xiàn) strict 改成ignore 可以解決問題
最好的解決的方案是通過notepad 打開 然后保存為正確的編碼格式最好
?
通過這個(gè)函數(shù)可以進(jìn)入
?
????r = r.decode('utf-8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe5
解決方法:
1.查看文件的編碼格式
2.Csv,xls 相互交換查看
f?= r'K:\myselfCodeOffice\code1\dataset_2.csv'
# df =codecs.open(f,'rb','ascii','ignore') ?# 讀入股票數(shù)據(jù)
2.?F的 關(guān)閉文件 ?重新打開運(yùn)行
4.
?
當(dāng)有一個(gè)實(shí)例在運(yùn)行的時(shí)候 同時(shí)再運(yùn)行第二個(gè)實(shí)例的時(shí)候就會(huì)出現(xiàn)編碼錯(cuò)誤
有時(shí)候可行 ?有時(shí)候又不可行 真是服了
問題? 查看別人的代碼很多問題就有可能是之前編輯的代碼版本太低,直接注釋掉 之后 ?改用新版本的代碼改寫
庫不存在,has no attribution 等
module 'PyQt5.QtGui' has no attribute 'QApplication'
問題:
Parent directory of crack_capcha.model doesn't exist, can't save. (tensorflow 報(bào)錯(cuò))
?
在保存模型的時(shí)候報(bào)的錯(cuò),
使用代碼:
saver.save(sess, "crack_capcha.model", global_step=step)
解決方案:
在crack_capcha.model 的前面加./,即使用代碼:
saver.save(sess, "./crack_capcha.model", global_step=step)
問題即可解決。
為什么呢?./代表代碼執(zhí)行的根目錄,之前直接那樣寫是找不到文件存放的目錄的,或者也可以直接寫絕對(duì)路徑。
問題?
Python 安裝庫,包
https://blog.csdn.net/wait_for_eva/article/details/79440510
指定編譯器
?
自己硬盤上指定位置就行了,這個(gè)就這樣。
?
安裝包
easy_install和pip都可以安裝,但是裝逼氣氛濃厚,配置和使用問題多。
對(duì)于windows的用戶,那是相當(dāng)?shù)牟挥押谩?
明明按照步驟來的,就是會(huì)錯(cuò)。
不過現(xiàn)在不用擔(dān)心了,windows嘛,干嘛要裝逼呢,windows上圖形界面才是王道好不好。
反正我垃圾,研究沒那么深,也用不著。
還是剛才那里,點(diǎn)那個(gè)加號(hào)
1. 先搜索框中搜索
2. 在資源池中確定資源
3. 直接安裝就行了
方便吧,快捷吧
?
配置PIP源
更換pip源更是方便。
如你所見,右邊三個(gè)分別是
1. 增加
2. 刪除
3. 修改
都是pip源的操作,豆瓣源就很好,你可以試試
https://pypi.douban.com/simple/
默認(rèn)的pip源實(shí)在是low,配置一下還得寫pip.ini,尤其是.pip文件夾,問題是windows允許你.(點(diǎn))么。
操蛋,這樣就好多了。
?
這樣子不僅能裝了,而且速度快多了,以前真的是水深火熱。
尤其你想scrapy?TensorFlow?
以前我裝一個(gè)matplotlib基本都不可能。
依賴包多,我一個(gè)一個(gè)來。
直接裝的,源碼裝的,whl文件裝的,結(jié)果有些還是不了。
這下舒服多了。
?
學(xué)框架,至少得獲取到框架不是。
https://www.cnblogs.com/hkgov/p/7799078.html
?
更換安裝源
?
?
問題:彈到另一個(gè)屏幕 隱藏的問題
?
右鍵點(diǎn)出來 ?然后 用 Fn加快捷鍵 最大化而出現(xiàn)窗口
https://blog.csdn.net/wj1066/article/details/78853717
https://blog.csdn.net/maymay_/article/details/80241627
pandas中時(shí)間窗函數(shù)rolling的使用
?
pycharm debug出現(xiàn)UnicodeDecodeError: 'utf-8' codec can't decode 解決辦法
原先我的python文件都是在最初建的一個(gè)project下,在另外一個(gè)文件夾下新建一個(gè)python文件,直接用pycharm點(diǎn)開就不會(huì)出現(xiàn)這種問題,于是我把這個(gè)project對(duì)應(yīng)文件夾下的除.py文件外其他的都刪除。這個(gè)問題目前來說沒有出現(xiàn)了。 --------------------- 本文來自 zhxh0609 的CSDN 博客 ,全文地址請(qǐng)點(diǎn)擊:https://blog.csdn.net/shaiguchun9503/article/details/81115605?utm_source=copy
亂碼問題
如果代碼打開是亂碼,先用notepad 打開再改成正確的代碼編碼保存之后再打開就可以了
?
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
為什么這里不能用and 或者 or
問題
這種問題一般是對(duì)一個(gè)表的更改不小心錯(cuò)誤的賦值給另一個(gè)表了
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
如果等于其本身 也會(huì)有警告
問題?
應(yīng)該是超出最大行的限制了
excel 無法粘貼信息,原因是復(fù)制區(qū)域與粘貼區(qū)域形狀不同
問題
setting an array element with a sequence
矩陣的列沒有對(duì)齊,把沒對(duì)齊的數(shù)據(jù)補(bǔ)上就可以了??維度變換有錯(cuò)
原因是在把數(shù)據(jù)輸入網(wǎng)絡(luò)的時(shí)候列表的行數(shù)列數(shù)不匹配,比如?
[[1,2], [2, [3, 4]]]?
[[1,2], [2, 3, 4]]?
而tensor必須要2*2或者3*3的輸入才行?
問題
Numpy array: sequence too large
sequence too large?error means that you are creating a multidimension array that the dimension is large that 32. For example:?np.empty([1]*33)?will this error. Are you sure you want to create >32 dimension array? If you want to create an empty array the same shape as?model[MN][i], you should use:?empty_like().?–?HYRY?Jul 17 '13 at 1:22
問題
ValueError: Cannot feed value of shape (1,) for Tensor u'Placeholder:0', which has shape '(1, 1)'
其實(shí)原因很簡(jiǎn)單,我這里的feed需要(1,1)的矩陣,也就是一維的且只有一個(gè)元素的矩陣,但[x_]和[y_]在tensorflow里會(huì)被認(rèn)為是一維的但元素個(gè)數(shù)不知的數(shù)組。所以加個(gè)方括號(hào), 即[[x_]]和[[y_]]就搞定了
因?yàn)樵诮o函數(shù)傳參數(shù)shape時(shí)需要傳遞形狀,如shape=[2,2],表示2維矩陣,每個(gè)維度有兩個(gè)元素,只是代表形狀,不是具體的矩陣
當(dāng)傳遞給feed里面的占位符時(shí),需要實(shí)際具體的矩陣而不是形狀,如傳二維的矩陣:x_data:[[1,1],[1,1]]
問題?
OSError: Initializing from file failed
當(dāng)你用pandas讀取文件報(bào)這種錯(cuò)誤時(shí),一般是因?yàn)槟愕奈募袔в兄形?#xff0c;例如:
res = pd.read_csv('我的文件.csv')
這種情況就會(huì)報(bào)錯(cuò),只需要這樣更改就可以:
f = open('我的文件.csv')
res = pd.read_csv(f)
?
另一種方法
temp=pd.read_csv(f,encoding='gbk',engine='python')??加個(gè)engine=’python’???用于python3.6 也可以
?
問題?
路徑里面最好不要有中文
https://www.cnblogs.com/hhh5460/p/5615729.html???轉(zhuǎn)換的總結(jié)
https://blog.csdn.net/csdn15698845876/article/details/73380803?stack
https://www.cnblogs.com/hhh5460/p/5615729.html??sklearn 并行 高效的處理數(shù)據(jù) ?重點(diǎn)
使用sklearn優(yōu)雅地進(jìn)行數(shù)據(jù)挖掘
Pipeline ?
https://www.cnblogs.com/bambipai/p/7658311.html
https://mp.weixin.qq.com/s?__biz=MzI5MjM4MDM1Nw==&mid=2247484382&idx=1&sn=2b8c4cb3b538ea442d302d8557e0e4ab&chksm=ec030874db748162a49452b8ba75c9d308e5d95a1b6acc71a440365090f492c2ab39b539fb21&mpshare=1&scene=1&srcid=08186LQegqpH9Onh1Vm5PXjd#rd
pipeline
在用pandas進(jìn)行數(shù)據(jù)重排時(shí),經(jīng)常用到stack和unstack兩個(gè)函數(shù)。stack的意思是堆疊,堆積,unstack即“不要堆疊”,我對(duì)兩個(gè)函數(shù)是這樣理解和區(qū)分的。
??常見的數(shù)據(jù)的層次化結(jié)構(gòu)有兩種,一種是表格,一種是“花括號(hào)”,即下面這樣的l兩種形式:
??????????????????????????????????
???
| ? | store1 | store2 | store3 |
| street1 | 1 | 2 | 3 |
| street2 | 4 | 5 | 6 |
?
?
?
?
?
?
表格在行列方向上均有索引(類似于DataFrame),花括號(hào)結(jié)構(gòu)只有“列方向”上的索引(類似于層次化的Series),結(jié)構(gòu)更加偏向于堆疊(Series-stack,方便記憶)。stack函數(shù)會(huì)將數(shù)據(jù)從”表格結(jié)構(gòu)“變成”花括號(hào)結(jié)構(gòu)“,即將其行索引變成列索引,反之,unstack函數(shù)將數(shù)據(jù)從”花括號(hào)結(jié)構(gòu)“變成”表格結(jié)構(gòu)“,即要將其中一層的列索引變成行索引。例:
?
???raise ValueError("cannot reindex from a duplicate axis")
ValueError: cannot reindex from a duplicate axis
?
這個(gè)是存在重復(fù)字段
?
Pycharm 當(dāng)前目錄設(shè)置 ?重點(diǎn)
目錄結(jié)構(gòu) ?
這應(yīng)該是一個(gè)web服務(wù),dao,db是數(shù)據(jù)庫相關(guān),engines是主要的引擎部分,service是相關(guān)服務(wù),utils是工具類,web應(yīng)該是含有主要的后臺(tái)服務(wù)。可以從web開始看
第一步:
NewProject,跳轉(zhuǎn)到下放頁面:
“紅色框”是項(xiàng)目所在的路徑。(注意:項(xiàng)目路徑不要包含中文)
“藍(lán)色框”是根據(jù)紅色框的路徑自動(dòng)生成,我們不用管它,它是pyCharm自動(dòng)根據(jù)項(xiàng)目路徑,
在項(xiàng)目中添加了“venv”文件夾,是項(xiàng)目的依賴。
“黃色框”中的路徑是這個(gè)項(xiàng)目所依賴的python,路徑是你本地python的python.exe的全路徑,是項(xiàng)目的依賴。
點(diǎn)擊右下角的“Create”按鈕,創(chuàng)建項(xiàng)目。
create virtual......
?
第二步:
簡(jiǎn)單的python項(xiàng)目創(chuàng)建成功,看一下目錄結(jié)構(gòu):
?
“紅色框”:我建的工作文件,文件下有自己寫的demo01程序。
“藍(lán)色框”:pyCharm為我們生成的依賴文件夾,可以看到灰色字(library root),
這是我們項(xiàng)目的依賴,所以不要?jiǎng)印?#xff08;注:venv可以創(chuàng)建虛擬環(huán)境,讓多個(gè)項(xiàng)目之間的Python依賴隔離開,不會(huì)在項(xiàng)目之間沖突。)
“黃色框”:寫的簡(jiǎn)單的示例python代碼。
?
?
當(dāng)調(diào)試出現(xiàn)亂七八糟的結(jié)果而不是需要的結(jié)果的時(shí)候 ?就是代碼出錯(cuò)了
?
?
奇怪了?怎么填充了這么多值 而且是不同的 應(yīng)該是相同的才對(duì)
?
并不是以378 來填充的 見鬼了
python路徑拼接os.path.join()函數(shù)完全教程
https://blog.csdn.net/weixin_37895339/article/details/79185119
路徑拼接
?
#因?yàn)闆]有2016年對(duì)應(yīng)時(shí)期的數(shù)據(jù),直接用當(dāng)前的數(shù)據(jù)作為上期數(shù)據(jù),不能用零,用零的話偏差就比較大了
?
https://www.cnblogs.com/chownjy/p/8663024.html???python self
如果self指向類本身,那么當(dāng)有多個(gè)實(shí)例對(duì)象時(shí),self指向哪一個(gè)呢?
總結(jié)
self在定義時(shí)需要定義,但是在調(diào)用時(shí)會(huì)自動(dòng)傳入。
self的名字并不是規(guī)定死的,但是最好還是按照約定是用self
self總是指調(diào)用時(shí)的類的實(shí)例。
?
類里面的函數(shù)的第一個(gè)參數(shù)都需要self
?
?
模型本身的參數(shù)直接賦值:上面是模型本身的參數(shù)
下面是非模型本身的參數(shù),自己定義的參數(shù) 要再次賦值
https://blog.csdn.net/quiet_girl/article/details/72517053
Fit_transform
和transform的區(qū)別
·??# 從sklearn.preprocessing導(dǎo)入StandardScaler
·??·??from sklearn.preprocessing import StandardScaler
·??·??# 標(biāo)準(zhǔn)化數(shù)據(jù),保證每個(gè)維度的特征數(shù)據(jù)方差為1,均值為0,使得預(yù)測(cè)結(jié)果不會(huì)被某些維度過大的特征值而主導(dǎo)
·??·??ss = StandardScaler()
·??·??# fit_transform()先擬合數(shù)據(jù),再標(biāo)準(zhǔn)化
·??·??X_train = ss.fit_transform(X_train)
·??·??# transform()數(shù)據(jù)標(biāo)準(zhǔn)化
·??·??X_test = ss.transform(X_test)
·??--------------------- 作者:nana-li 來源:CSDN 原文:https://blog.csdn.net/quiet_girl/article/details/72517053?utm_source=copy 版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!
?
Dictvector 直接獨(dú)熱編碼
?
?
Joblib 第一個(gè)參數(shù)是模型
https://mp.weixin.qq.com/s?__biz=MzI5MjM4MDM1Nw==&mid=2247484382&idx=1&sn=2b8c4cb3b538ea442d302d8557e0e4ab&chksm=ec030874db748162a49452b8ba75c9d308e5d95a1b6acc71a440365090f492c2ab39b539fb21&mpshare=1&scene=1&srcid=08186LQegqpH9Onh1Vm5PXjd#rd
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline
pipe_lr = Pipeline([('sc', StandardScaler()),
????????????????????('pca', PCA(n_components=2)),
????????????????????('clf', LogisticRegression(random_state=1))
????????????????????])
上面的括號(hào)里面表示按順序直線
pipe_lr.fit(X_train, y_train)
print('Test accuracy: %.3f' % pipe_lr.score(X_test, y_test))
????????????????# Test accuracy: 0.947
https://blog.csdn.net/lanchunhui/article/details/50354978
Ravel >>> x = np.array([[1, 2], [3, 4]])
>>> x
array([[1, 2],
???????[3, 4]])
>>> x.flatten()
array([1, 2, 3, 4])
>>> x.ravel()
array([1, 2, 3, 4])
兩者默認(rèn)均是行序優(yōu)先
>>> x.flatten('F')
array([1, 3, 2, 4])
>>> x.ravel('F')
array([1, 3, 2, 4])
>>> x.reshape(-1)
array([1, 2, 3, 4])
>>> x.T.reshape(-1)
array([1, 3, 2, 4])
Python修改代碼模板
?
?
?
?
從一列里面取部分來做加減乘除不行?
?
兩個(gè)// 是取整
Python ?dataframe ?dtype
Int,float32,float64,int64
Pip 源 ?包源 庫源 非 ?anaconda 自己更新自身的源
阿里云?http://mirrors.aliyun.com/pypi/simple/
中國(guó)科技大學(xué)?https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban)?http://pypi.douban.com/simple/?
清華大學(xué)?https://pypi.tuna.tsinghua.edu.cn/simple/
中國(guó)科學(xué)技術(shù)大學(xué)?http://pypi.mirrors.ustc.edu.cn/simple/
?
刪除格式
?
造成程序讀入之后列亂序很有可能就是這樣隱藏了 格式混亂 ?excel
ValueError: day is out of range for month ?問題
這個(gè)情況for循環(huán) 一個(gè)一個(gè)值的處理居然能通過
項(xiàng)目,虛擬環(huán)境的處理
?
項(xiàng)目是在虛擬環(huán)境中運(yùn)行,但是二者的文件夾卻是分開的,沒有關(guān)系的 ?但是每個(gè)項(xiàng)目要選對(duì)應(yīng)的python 所在地,真實(shí)的python 安裝所在地,而不是環(huán)境所在地???????
?
項(xiàng)目和虛擬環(huán)境需要在同一個(gè)目的
?
虛擬環(huán)境就是為了要求干凈的環(huán)境,就不要用conda裝了
?
?
?
?
?
可以選第一個(gè) VE,但是只能一個(gè)一個(gè)安裝包
第二個(gè)conda 可以一起把所有的包都裝上,但是 貌似國(guó)內(nèi)源不能用了
?Location,虛擬環(huán)境的location 隨便選
編輯器,下載安裝的 python 版本 ?根據(jù)自己要求來選
https://blog.csdn.net/qq_36015370/article/details/79484455
Anaconda 安裝
Anaconda 命令
conda config –-show 注意是雙橫線
?conda info 查看當(dāng)前配置信息
Conda --help
?
Pycharm確實(shí)是一個(gè)非常不錯(cuò)的Python開發(fā)IDE,尤其對(duì)于初學(xué)者而言。
?https://www.cnblogs.com/loyung/p/8554836.html
打開新建項(xiàng)目
?
1.選擇新建一個(gè)Pure Python項(xiàng)目,新建項(xiàng)目路徑可以在Location處選擇。?
2.Project Interpreter部分是選擇新建項(xiàng)目所依賴的python庫,第一個(gè)選項(xiàng)會(huì)在項(xiàng)目中簡(jiǎn)歷一個(gè)venv(virtualenv)目錄,這里存放一個(gè)虛擬的python環(huán)境。這里所有的類庫依賴都可以直接脫離系統(tǒng)安裝的python獨(dú)立運(yùn)行。?
3.Existing Interpreter關(guān)聯(lián)已經(jīng)存在的python解釋器,如果不想在項(xiàng)目中出現(xiàn)venv這個(gè)虛擬解釋器就可以選擇本地安裝的python環(huán)境。?
那么到底這兩個(gè)該怎么去選擇呢,這里建議選擇New Environment 可以在Base Interpreter選擇系統(tǒng)中安裝的Python解釋器,這樣做的好處有很多。?
·?python項(xiàng)目可以獨(dú)立部署
·?防止一臺(tái)服務(wù)器部署多個(gè)項(xiàng)目之間存在類庫的版本依賴問題發(fā)生
·?也可以充分發(fā)揮項(xiàng)目的靈活性
項(xiàng)目開發(fā)過程中我們會(huì)用到很多的第三方類庫:
打開項(xiàng)目文件——設(shè)置——項(xiàng)目——project Interpreter——選擇項(xiàng)目環(huán)境,并且在項(xiàng)目環(huán)境中查看項(xiàng)目已引用的第三方庫列表
點(diǎn)擊搜索添加需要的第三方庫
默認(rèn)地址是https://pypi.python.org/simple國(guó)外地址下載會(huì)非常慢,這里可以選擇 Manage Repositories添加國(guó)內(nèi)pip鏡像
?
這里推薦三個(gè)非常不錯(cuò)的國(guó)內(nèi)鏡像
https://pypi.tuna.tsinghua.edu.cn/simple/? 清華大學(xué)鏡像
http://pypi.douban.com/simple/? ? 豆瓣鏡像
http://mirrors.aliyun.com/pypi/simple/ 阿里鏡像
?
?
Word 要更改行與行的距離 ?
?
?
?
Anaconda 默認(rèn)虛擬環(huán)境是創(chuàng)建在envs 這個(gè)目錄下的
?
conda create -n envspython35 python=3.5
Conda 創(chuàng)建虛擬環(huán)境命令
?
?
?
換回conda 默認(rèn)源
conda?config --remove-key channels
?
?
?
通過這里是安裝不上 的
Pip 更新自身
python -m pip install --upgrade pip?
Conda 命令
anaconda用法:
查看已經(jīng)安裝的包:
pip list 或者 conda list
?
安裝和更新:
pip install requests
pip install requests --upgrade
或者
conda install requests
conda update requests
?
更新所有庫
conda update --all
?
更新 conda 自身
conda update conda
總結(jié)
以上是生活随笔為你收集整理的python编程问题---第一次的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python编程问题--第二次
- 下一篇: 矩阵乘以其矩阵转置求导-数学