資料來源: https://docs.python.org/3/library/stdtypes.html#str.find
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122100657_32.png)
data.txt:
I love you all. But you do love love me at all.\nYou always love Python.
程式碼:
filePath = r”C:\Python\myfind\data.txt”
def keywordIndexFromFile(patterns : str, filePath : str) -> list:
with open(filePath,”r”) as f:
dataStr = f.read()
#print(dataStr)
lst=[]
idx = dataStr.find(patterns)
#lst=[ idx ]
while idx != -1:
#idxTmp = dataStr.find(patterns,idx+1)
lst.append( idx )
idx = dataStr.find(patterns,idx+1)
return lst
print(keywordIndexFromFile(“love”,filePath))
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122101109_3.png)
參考解答:
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122101727_51.png)
詞頻計算:
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122111312_19.png)
# -*- coding: utf-8 -*-
from typing import Tuple
filePath = r”C:\Python\myfind\data.txt”
def keywordIndexFromFile(patterns : str,
filePath : str) -> Tuple[list[int],float]:
with open(filePath,”r”) as f:
dataStr = f.read()
#print(dataStr)
lst=[]
idx = dataStr.find(patterns)
#lst=[ idx ]
while idx != -1:
#idxTmp = dataStr.find(patterns,idx+1)
lst.append( idx )
idx = dataStr.find(patterns,idx+1)
lstAll = dataStr.split(” “)
#print(lstAll , len(lstAll))
termFrequency = len(lst) / len( lstAll )
return lst, termFrequency
lst, termFrequency = keywordIndexFromFile(“love”,filePath)
print(“Key word index:”,lst)
print(“詞頻: %.2f %%” %(termFrequency*100) )
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122111354_84.png)
參考解答:
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221122111722_6.png)
改用**dict當作輸入參數:
![Python: 字串 str.find(關鍵字[,start][,end]),找不到的話回傳-1,如何找出資料字串中,所有關鍵字的index?詞頻計算 - 儲蓄保險王](https://savingking.com.tw/wp-content/uploads/2022/11/20221123083724_5.png)
![Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs) Python: 如何用 pandas.DataFrame.apply 讓DataFrame增加新的一欄 ; df[“mean”] = df.apply( np.mean, axis=1) ; DataFrame.apply(func, axis=0, raw=False, result_type=None, args=(), **kwargs)](https://i0.wp.com/savingking.com.tw/wp-content/uploads/2023/05/20230519084320_22.png?quality=90&zoom=2&ssl=1&resize=350%2C233)


![Python: 如何使用numpy.newaxis 增加資料的維度? y = x[:, np.newaxis] Python: 如何使用numpy.newaxis 增加資料的維度? y = x[:, np.newaxis]](https://i2.wp.com/savingking.com.tw/wp-content/uploads/2023/03/20230313184351_57.png?quality=90&zoom=2&ssl=1&resize=350%2C233)






近期留言