python-3.x - 有没有办法根据 python 3.x 中另一列的值来分隔一列?
问题描述
我正在用 python 编写代码来分析我的论文数据。从实验中,我得到了大量数据。在脚本的第一部分,它生成如下输出:
GateVolt Field HallVolt
0 1500 76
0 1490 75
0 1485 74
. . .
. . .
0.1 1485 72
0.1 1476 70
. . .
. . .
0.2 1470 67
0.2 1465 62
. . .
. . .
. . .
基于此输出进行进一步分析。我写的代码:
#Read the CSV that contains all the data
field = np.array([])
hallVolt = np.array([])
gate_voltage = np.array([])
channel_voltage = np.array([])
voltage_Counter = 0
for lineIndex in range(len(fileLines)):
currentLine = fileLines[lineIndex]
dataSegment = currentLine.split()
field = np.append(Field, float(dataSegment[9])) #This is milli Tesla
hallVolt = np.append(hallVolt, float(dataSegment[5])) #This is milli Volt
channel_voltage = np.append(channel_voltage, float(dataSegment[2])) #This is Volt
VG = float(dataSegment[6]) - float(dataSegment[2])/2
gate_voltage = np.append(gate_voltage, np.round(VG, 2)) #This is Volt
if lineIndex > 1 and VG != gate_voltage[lineIndex-1]:
voltage_Counter = voltage_Counter + 1
HallVoltage = hallVolt-((max(hallVolt))+min(hallVolt))/2
HallVoltage_Norm = HV/((max(HV)-min(HV))/2)
所以我希望我的代码为每个“栅极电压”创建单独的“霍尔电压”和“磁场”列,如下所示:
GateVolt Field HallVoltage GateVolt Field HallVolt GateVolt Field HallVolt
0 1500 76 0.1 1485 72 0.2 1470 67
0 1490 75 0.1 1476 70 0.2 1465 62
0 1485 74 . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
最后,我想绘制“霍尔电压”与“场”的关系,并针对不同的栅极电压进行一些分析和拟合以及更多的绘制。
我几乎是编码和 python 的新手,我不知道接下来要做什么才能获得这样的输出。有什么方法可以实现我想做的事情吗?先谢谢了!!!:)
解决方案
推荐阅读
- openedge - 如何忽略正在进行的 FOR EACH 语句?
- javascript - MongoDB:插入嵌套数组或 upsert
- rust - 如何将生命周期与 AsRef 包装器分离?
- java - 如何从循环中排除语句?
- html - .mkv 视频在 PC 上播放,但不能在移动设备上使用 HTML5 标签
- gantt-chart - Anygantt - 删除完成百分比和里程碑
- php - 将 PHP 8 添加到 wamp 后,phpmyadmin 无法正常工作
- c# - 在 WPF C# 中扩展 TextBox 以使用 MaxLength
- azure - Azure 服务总线 - 废弃的消息返回到同一订阅者
- html - 溢出-y 滚动具有 100vh 的固定元素的特定子元素而不显示滚动条?