Я пытаюсь записать многомерный массив numpy
в файл .csv
.Этот массив включает в себя слова, цифры и словарь.При записи файла мой код выводит ключи и значения в массив.Тем не менее, мне нужно только записать значения.
Мой код можно увидеть следующим образом:
import numpy as np
lowercase_letters = 'abcdefghijklmnopqrstuvwxyz'
words_array = np.genfromtxt('words_file.txt', dtype=str).reshape(300, 1)
lowercase_words = np.array([word[0].lower() for word in words_array])
words_array = np.append(words_array, lowercase_words.reshape(300, 1), axis=1)
def letter_frequency(word):
letter_frequency = {}
for letter in lowercase_letters:
letter_frequency[letter] = 0
for letter in word:
letter_frequency[letter] += 1
return letter_frequency
vectorized_frequencies = np.vectorize(letter_frequency)
frequencies = vectorized_frequencies(lowercase_words)
words_array = np.append(words_array, frequencies.reshape(300, 1), axis=1)
word_length = np.vectorize(len)
word_lengths = word_length(words_array[:, :1])
words_array = np.append(words_array, word_lengths.reshape(300, 1), axis=1)
np.savetxt('rocko_bishop_project2.csv', words_array, delimiter=',', fmt='%s',
header="original, lower, a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,length")
После записи окончательного массива в файл CSV (также требуется, я могу 'не экспортируется как файл другого типа), он печатает полный словарь с ключами и значениями:
Abject,abject,{'a': 1, 'b': 1, 'c': 1, 'd': 0, 'e': 1, 'f': 0, 'g': 0, 'h': 0, 'i': 0, 'j': 1, 'k': 0, 'l': 0, 'm': 0, 'n': 0, 'o': 0, 'p': 0, 'q': 0, 'r': 0, 's': 0, 't': 1, 'u': 0, 'v': 0, 'w': 0, 'x': 0, 'y': 0, 'z': 0},6
Однако я хотел бы просто напечатать значения вместо этого.
Abject,abject,1,1,1,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
Параметры проекта не позволяют мне импортировать pandas
или любую другую библиотеку, кроме numpy
.
Каков наилучший курс действий?