【问题标题】:How to remove single quote in python list如何删除python列表中的单引号
【发布时间】:2021-04-28 05:00:26
【问题描述】:

我想从列表中删除单引号

创建循环:

results = []
for k in range(1,number_of_observation+2):
results += ['X'+str(k)]

results

输出:

['X1','X2','X3','X4','X5','X6','X7','X8','X9','X10','X11','X12','X13','X14','X15','X16','X17','X18']

实际上列表中的每个元素都包含这样的numpy数组:

X1 = array([ 5.29869582e+03,  4.78138124e+03,  4.66993519e+03,  4.63760715e+03,
             4.24625776e+03,  6.82121026e-13,  3.67310328e+03,  3.62922983e+03,
             4.67551867e+03, -2.01596513e+03,  5.17998388e+03,  0.00000000e+00,
             5.44605355e+03,  4.51697631e+03,  4.62300856e+03,  4.44902873e+03])

X2 = array([ 5.15984732e+03,  3.69964719e+03,  4.88607026e+03,  5.06762424e+03,
             4.54623661e+03,  9.09494702e-13,  4.04998815e+03,  3.91555776e+03,
             5.07698709e+03, -1.11066480e+03,  4.49209767e+03,  4.54747351e-13,
             4.97724688e+03,  4.24955479e+03,  4.72048717e+03,  5.58904656e+03])

我想从中创建数据框

Final = pd.DataFrame(data = [results], columns= column_name)
Final

期望输出:

但它给了我这样的输出:

【问题讨论】:

  • 你故意用'X'+str(k)创建了一个字符串列表。引号是字符串的正常显示。如果你想要一个数组列表,为什么不使用[X1, X2, X3, ...]?不要害怕输入所有这些变量。在 Python 中,变量名和字符串之间存在非常实际的区别。
  • 嗨@hpaulj 无论如何感谢您的反馈,我已经尝试过您的方法,当我手动键入 [X1, X2, X3, ...] 列表时输出效果很好,我只是尽量减少代码的输入和编辑,因为这段代码会经常用于不同形状的数据集
  • 循环遍历所有变量('x1', 'x2'),使用评估函数获取它的值...
  • @VinayG 你让我开心,伙计,提前谢谢,它就像一个魅力

标签: arrays pandas list dataframe numpy


【解决方案1】:

您可以将每个元素存储为键值对列表,键为 X1,值为浮点列表。

因此,您可以从字典列表中分别迭代键和值。

【讨论】:

    【解决方案2】:

    在结果列表上使用 eval 函数。而不是只使用图像中的 [results] 列表理解。

    【讨论】:

      猜你喜欢
      • 2018-04-27
      • 1970-01-01
      • 2012-01-15
      • 1970-01-01
      • 2020-04-05
      • 2022-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多