[英]How to read a file of extension .dat in python and extract data from it
[英]How to read and extract data from .vec file in python
如何从 python 中的.vec
文件中读取和提取数据?
f = open("test.vec","r") # opens file with name of "test.txt"
print(f.read())
f.close()
但我无法提取信息。 我希望数据将存储在test.vec
文件中的单个 arrays 中。
这是我的数据集: https://www.kaggle.com/datasets/yekenot/fasttext-crawl-300d-2m
它是 Common Crawl 4.2 GB vec 文件。
由于文件太大而无法在 IDE 中显示。 我逐行阅读并导出到 CSV (17 MB)
def load_vectors(fname):
fin = io.open(fname, 'r', encoding='utf-8', newline='\n', errors='ignore')
x = fin.readline().split()
all = []
while x:
all.append(x[0])
x = fin.readline().split()
df = pd.DataFrame(all)
df.to_csv('.../output/ft.csv',index=False)
在此处调用 function:
FASTTEXT_DATASET_PATH = '/content/drive/MyDrive/Colab Notebooks/pretrained/crawl-300d-2M.vec'
load_vectors(FASTTEXT_DATASET_PATH)
x 的维度是 (1999995, 300)
这里我打印第一行: [',', '-0.0282', '-0.0557', ... '-0.0042']
就我而言,我只想导出每个列表的第一个元素。 所以我将 append x[0] 放到一个名为“all”的列表中。 然后我将其转换为 dataframe 并导出到 csv 文件。
对于那些有兴趣查看 FastText 预训练数据集的样子的人,我已将其上传到 Kaggle 。 数据集的详细信息: crawl-300d-2M.vec.zip:在 Common Crawl 上训练的 200 万个词向量(600B 令牌)- 大小写
with open("file.txt", "r") as ins:
array = []
for line in ins:
array.append(line)
试试这个。 这有点复杂。 否则试试这个简单的。
with open('filename') as f:
lines = f.readlines()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.