***编辑:我最初将代码保存为。csv文件,但后来将其转换为。xlsx文件。
我试图改变我的代码,以保存在单独的单元格中的值,而在由分号分隔的同一单元格中。我目前的代码将值(每行8个值)保存在由分号分隔的单个单元格中,然后运行一组单独的代码来执行文本到列。我不精通Python,但我认为我应该能够编辑将值保存到csv文件的代码块来完成此操作。
下面是将数据保存到excel文件的代码块。
# Stores data in Excel File
with open(output, "w") as fp:
for line in data:
fp.write("; ".join(str(x) for x in line))
fp.write("n")
为了以防万一,下面是收集数据及其存储方式的代码
def recordData(memory_service):
""" Record the data from ALMemory.
Returns a matrix of values
"""
print "Recording data ..."
data = list()
startTime = time.time()
s = 9.06
while True:
currentTime = time.time()
elapsedTime = currentTime - startTime
line = list()
for key in ALMEMORY_KEY_NAMES:
value = memory_service.getData(key)
line.append(value)
print value
data.append(line)
if elapsedTime > s:
return data
最后是代码保存的图片:Excel Data
我使用Python 2.7.18和PyCharm 2022.1.2。
***编辑:代码转换。csv到。xlsx
# Reads in the .csv file and converts it to .xlsx
readFile = pd.read_csv(r'C:UsersPycharmProjectsFsrValues5.csv')
readFile.to_excel(r'C:UsersPycharmProjectsExcel DataNew TrialsFsrValues5.xlsx', index=None,
header=True)
我不确定如果没有excel模块这是可能的。我使用Openpyxl。我相信如果不使用模块,python就不能正确使用。xlsx文件。
在openpyxl中,您可以分配给特定的单元格:
import openpyxl as op
wb = op.load_workbook("Path/to/workbook")
ws = wb["Name of worksheet to be used"]
ws['A1'] = "x"
ws['B2'] = "y"
然后可以对数据使用split()方法来获得不带分号的数据。然后使用循环遍历单元格并将数据粘贴到需要的位置
创建CSV文件没有问题。问题是:
readFile = pd.read_csv(r'C:UsersPycharmProjectsFsrValues5.csv')
如注释所述:
您只需要确保系统导入/读取CSV文件知道使用什么符号作为分隔符。
指定sep
,因为您没有使用默认分隔符,
。
readFile = pd.read_csv(r'C:UsersPycharmProjectsFsrValues5.csv', sep=';')